【发布时间】:2016-04-13 21:16:11
【问题描述】:
我有一些与Subsetting a data.table using another data.table 和Subset a data.table by matching columns of another data.table 相同的问题
dt 是一样的。
dt
id year event
1: 2 2005 1
2: 2 2006 1
3: 2 2007 1
4: 4 2008 1
5: 4 2009 1
6: 2 2005 0
7: 4 2006 0
8: 4 2007 0
9: 2 2008 0
dt <- data.table(id = c(2,2,2,4,4,2,4,4,2), year = c(2005:2009,2005:2008),
event = rep(1:0, times=c(5, 4)))
但是,dt1 有点不同
dt1
year performance event
1: 2005 1000 1
2: 2006 1001 1
3: 2007 1002 1
4: 2008 1003 1
5: 2009 1004 1
6: 2005 1005 0
7: 2006 1006 0
8: 2007 1007 0
9: 2008 1008 0
dt1 <- data.table(year = c(2005:2009,2005:2008), performance = 1000:1008,
event = rep(1:0, times=c(5, 4)))
我想根据dt 的id 拆分dt1 并按事件分组。所需的输出可能是两个不同的 data.tables:
dt1.sub1
year performance event
1: 2005 1000 1
2: 2006 1001 1
3: 2007 1002 1
4: 2005 1005 0
5: 2008 1008 0
dt1.sub2
year performance event
1: 2008 1003 1
2: 2009 1004 1
3: 2006 1006 0
4: 2007 1007 0
有没有办法在不使用合并的情况下实现这一点?
【问题讨论】:
-
不,我弄错了,
dt和dt中的所有内容都相同,除了dt有一个额外的id列。我想根据dt的id拆分dt1。 -
不,我不这么认为
-
您应该编辑/清理您的问题。不清楚你在问什么。
标签: r data.table subset