0
的更新类型列表的列假设我们有以下data.table:[R data.table为一组行
> a <- data.table(id=(1:3), val=vector("list",length(3)))
> a$val <- list(c("a","b"),c("c","d","e"),c("f","e"))
> a
id val
1: 1 a,b
2: 2 c,d,e
3: 3 f,e
我们现在要从列删除元素“E”“VAL”在“ID” 2和3 行我能一起实现这一点:
> for (x in c(2,3)) {
a[id==x, val := list(list(val[[1]][ val[[1]] != 'e']))]
}
> a
id val
1: 1 a,b
2: 2 c,d
3: 3 f
怎么可以这样的东西做过类似
a[id %in% c(2,3), ..] ?
感谢您使用lapply的想法!我修改了第二个解决方案以使用参考赋值: 'a [id%in%c(1,2),val:= lapply(val,function(x)x [x!=“e”])] ' 你想在你的答案中包括它吗? –
@Olege legorov,完成 – Vitalijs
真棒。再次感谢! –