索引R中数据帧的重复事例
要创建报告,我必须重新排列data.frame 它是:索引R中数据帧的重复事例,r,indexing,dataframe,multiple-columns,R,Indexing,Dataframe,Multiple Columns,要创建报告,我必须重新排列data.frame 它是: id date kind datn AE00049 1999-03-01 train 2 AE00049 1999-03-01 bus 2 AE00049 2009-05-01 train 1 AE00052 1997-07-15 bus 1 AE00066 2005-09-01 tram 1 AE0007X 2009-07-01 bus 2 AE000
id date kind datn
AE00049 1999-03-01 train 2
AE00049 1999-03-01 bus 2
AE00049 2009-05-01 train 1
AE00052 1997-07-15 bus 1
AE00066 2005-09-01 tram 1
AE0007X 2009-07-01 bus 2
AE0007X 2009-07-01 train 2
AE00186 2002-11-01 bus 3
AE00186 2002-11-01 train 3
AE00186 2002-11-01 tram 3
我的目标是为具有相同ID和日期的行提供一个新的indexnumber,如下所示:
id date kind datn datnno
AE00049 1999-03-01 train 2 1
AE00049 1999-03-01 bus 2 2
AE00049 2009-05-01 train 1 1
AE00052 1997-07-15 bus 1 1
AE00066 2005-09-01 tram 1 1
AE0007X 2009-07-01 bus 2 1
AE0007X 2009-07-01 train 2 2
AE00186 2002-11-01 bus 3 1
AE00186 2002-11-01 train 3 2
AE00186 2002-11-01 tram 3 3
如何实现这一点?我们可以使用
ave
创建一个序列列,使用“id”和“date”作为分组变量
df1$datnno <- with(df1, ave(seq_along(id), id, date, FUN=seq_along))
df1$danno谢谢!我试了“ave”,但没有用“with”。“With”似乎对其他问题也有帮助。最美好的祝福!我已经点击了记号。谢谢你的提示!我还有一个问题:似乎代码在NAs中不可能正常工作。如何删除此代码中的NA?@VolkerHolzendorf这些NAs是在“日期”列中还是在“id”列中?是否要在继续此操作之前删除NAs行?新的答案是节省更多代码。