Warning: file_get_contents(/data/phpspider/zhask/data//catemap/4/r/83.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
索引R中数据帧的重复事例_R_Indexing_Dataframe_Multiple Columns - Fatal编程技术网

索引R中数据帧的重复事例

索引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

要创建报告,我必须重新排列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 
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行?新的答案是节省更多代码。