У меня есть data.frame, как показано ниже. Он имеет много строк и несколько значений в каждом столбцеr data.frame поворот и добавление строк
ID=c(466,469,471,480,509,513,515,517,518,519,520,521,453,455,463,474,477,479,481,482,484,489,496,497,500,503)
name=c(rep("a",12),rep("b",14))
start=c(rep("2/13/2013",12),rep("3/6/2013",14))
end=c(rep("2/20/2013",12),rep("3/13/2013",14))
start=as.Date(start,"%m/%d/%Y")
end=as.Date(end,"%m/%d/%Y")
maint=data.frame(ID,name,start,end)
> (maint[1,])
ID name start end
1 466 a 2013-02-13 2013-02-20
Я хотел бы взять данные и преобразовать их следующим образом. Я предоставляю пример для первой строки из исходных данных, но я хочу, чтобы одно и то же было сделано со всеми строками исходных данных. Пожалуйста, сообщите, как это сделать.
Я принимаю начальные и конечные столбцы, а затем найти все действительные даты между ними и созданием строки для каждой даты
ID name dates
466 a 2/13/2013
466 a 2/14/2013
466 a 2/15/2013
466 a 2/16/2013
466 a 2/17/2013
466 a 2/18/2013
466 a 2/19/2013
466 a 2/20/2013
@ user2100721 Получил это. Спасибо за уловку – lmo
Вы можете использовать 'seq.Date' внутри' Map' вместо определения функции. – user2100721
Я общался с этим около 5 минут, прежде чем сдаться и перейти к анонимной функции. – lmo