У меня есть фрейм данных, который содержит даты и идентификаторы.Мне нужно добавить несколько столбцов в этот фрейм данных на основе каждой даты.Я использую ddply
, чтобы сделать это следующим образом:
ddply(df, "dt", transform, new_column1 = myfun(column_name_1))
Однако у меня есть несколько имен столбцов, и я хотел бы добавить несколько новых столбцов.Есть ли способ, которым я могу передать строку для преобразования вместо new_column1?Например, я попытался:
ddply(df, "dt", transform, get("some_column_name")=myfun(column_name_1))
, но это не работает.Кроме того, если я передам column_name_1
myfun в виде строки, могу ли я просто использовать get("column_name_1")
в myfun
для ссылки на столбец?
ОБНОВЛЕНИЕ: НЕ УВЕРЕН, КАКФОРМАТИРУЙТЕ ЭТО ЛУЧШЕ
input:
id date val
id1 d1 1
id2 d1 2
id3 d1 3
id4 d1 4
id1 d2 10
id2 d2 20
id3 d2 30
id4 d2 40
out (например, для 2 ведер)
id date val bucket
id1 d1 1 1
id2 d1 2 1
id3 d1 3 2
id4 d1 4 2
id1 d2 10 1
id2 d2 20 1
id3 d2 30 2
id4 d2 40 2