я есть таблица данных, которая содержит три переменные:добавить еще несколько столбцов на основе значения в других столбцах R
- часов: формат INT, значение в диапазоне [0,23], и она увеличивается
- мин: формат INT, значение (10,20,30,40,50,60), она также увеличивается
- х: формат INT
ниже простой образец:
stocks <- data.frame(
hours = c(0,0,0,0,0,0),
mins = c(10,10,10,20,20,30),
x = c(2,4,4,5,3,4)
)
выход:
на основе этой таблицы, я хочу добавить еще несколько столбцов в соответствии с ч и мин. это выглядит так, как показано ниже:
0_10 0_20 0_30
2 5 4
4 3
4
Я пытался использовать dcast функцию, но финальный стол просто вычислить частоту X :(
library(data.table)
dcast(setDT(stocks), x ~ hours+mins, value.var = c("x"))
#Aggregate function missing, defaulting to 'length'
x 0_10 0_20 0_30
1: 2 1 0 0
2: 3 0 1 0
3: 4 2 0 1
4: 5 0 1 0
любое предложение
благодарности? !
Try 'LST <- поместить значение (акции, х ~ ч + mins); data.frame (lapply (lst, 'length <-', max (lengths (lst)))) ' – akrun