у меня есть логический вектор y
, и я хочу, чтобы разбить его на N
части таким образом, что каждая часть имеет одинаковое количество TRUE
значений (я не заботиться сколько FALSE
значения в каждом часть). В частности, я хочу целочисленный вектор b
длины N+1
такой, что b[1]=1
, b[N+1]=length(y)+1
и abs(sum(y[b[i]:b[i+1])-sum(y)/N)<1
.Разделить вектор на равные части по высоте
Алгоритм тривиально (используйте cumsum
и which
в цикле), но я хочу избежать цикла.
Я думаю, что это поможет, если вы действительно можете представить воспроизводимый пример и желаемый результат. –