Заполнение nrow матрицы со значением из вычисленного значения - PullRequest
0 голосов
/ 31 августа 2018

Я запускаю скрипт R для создания диапазона на основе столбца (часть моего кода ниже). Можно ли перевести мой третий столбец в количество строк в моей пустой матрице - это не только первое значение, но и создать матрицу со значениями в моем третьем столбце. Я приложил код, который я пытался использовать, но он будет использовать только первое значение в моем третьем столбце. Я не закончил весь мой код, но я в тупике Я собираюсь привести некоторые примеры того, над чем я работаю, если это поможет прояснить проблему, с которой я столкнулся, и то, к чему я стремлюсь.

образец данных

Data   Total
ID1 30980855
ID2 32874242       
ID3 25177144 

пример кода, который работает и создает столбец Сумма

for (i in 1:nrow(Data)){ 
Data$Amount = (round ((Data$Total/100000), digits = 0))
}

пример вывода

Data   Total   Amount
ID1 30980855            310
ID2 32874242            329
ID3 25177144            252

моя последняя попытка заполнить nrows для пустой матрицы все, что я пробовал до сих пор, дает мне только матрицу длиной 310 строк, но она не переходит к следующему значению ниже ее, как я ожидал

a = matrix(nrow=Data$Amount, ncol=3)

Причина, по которой я пытаюсь создать матрицу, содержащую 310 строк, за которыми следуют 329 строк и т. Д., Заключается в том, что я рассчитал их как необходимые размеры окон, чтобы иметь 100 тыс. Окон до достижения максимальной суммы. Окончательная матрица будет выглядеть примерно так. start - начальная позиция, а end - конечная позиция, которая будет составлять окно / диапазон 100 КБ.

Data   Start   End
ID1   1   100000
ID1   100001   200000
ID1   200001   300000
ID1   300001   400000
ID1   400001   500000
ID1   500001   600000
ID1   600001   700000
ID1   700001   800000
...