【发布时间】:2019-01-31 02:00:51
【问题描述】:
我知道data.table 包包含一个参数.GRP,用于按组提供订单号。但是,如果我不希望订单号从 1 开始,怎么办?
# dt
YEAR NAME ST
2010 AAA AK
2011 AAA AK
2012 AAA AK
2010 BBB AL
2011 BBB AL
2010 CCC CA
dt[, ID := .GRP, .(NAME, ST)]
YEAR NAME ST ID
2010 AAA AK 1
2011 AAA AK 1
2012 AAA AK 1
2010 BBB AL 2
2011 BBB AL 2
2010 CCC CA 3
现在,我清楚地解释我的问题。
如果我在其中添加许多新的观察结果。如何添加之前的ID 号码。
YEAR NAME ST ID
2010 AAA AK 1
2011 AAA AK 1
2012 AAA AK 1
2010 BBB AL 2
2011 BBB AL 2
2010 CCC CA 3
2010 DDD LA
2011 DDD LA
2015 DDD LA
2016 DDD LA
2010 EEE GA
2011 EEE GA
2014 FFF PA
YEAR NAME ST ID
2010 AAA AK 1
2011 AAA AK 1
2012 AAA AK 1
2010 BBB AL 2
2011 BBB AL 2
2010 CCC CA 3
2010 DDD LA 4
2011 DDD LA 4
2015 DDD LA 4
2016 DDD LA 4
2010 EEE GA 5
2011 EEE GA 5
2014 FFF PA 6
【问题讨论】:
-
您可以在添加新数据后再次致电
dt[, ID := .GRP, .(NAME, ST)]吗? -
数据很多,需要保持原来的数量。如果我重新调用它,数字也可能会改变。
标签: r data.table data-manipulation