作者热门文章
- html - 出于某种原因,IE8 对我的 Sass 文件中继承的 html5 CSS 不友好?
- JMeter 在响应断言中使用 span 标签的问题
- html - 在 :hover and :active? 上具有不同效果的 CSS 动画
- html - 相对于居中的 html 内容固定的 CSS 重复背景?
我正在学习介绍 data.table
g) 为什么保持 j 如此灵活? 显示了一个与我的用例相关的示例:
DT[, .(val = list(c(a,b))), by = ID]
# ID val
# 1: b 1,2,3,7,8,9
# 2: a 4, 5,10,11
# 3: c 6,12
我有一个最小的工作示例来说明问题
set.seed(1234)
size <- 10
ordering_ids <- rep(1:size, sample(1:size, replace=TRUE))
products <- letters[seq_along(ordering_ids)]
k <- data.table(o=ordering_ids, p=products)
对于 size <- 10
, 很可能一些条目导致 NA
但这不是问题。问题是,超过某个size
(大约 6),我丢失了连接列表中的条目:
k
# o p
# 1: 1 a
# 2: 1 b
# 3: 2 c
# 4: 2 d
# 5: 2 e
# 6: 2 f
# 7: 2 g
# 8: 2 h
# 9: 2 i
# 10: 3 j
# 11: 3 k
# 12: 3 l
# 13: 3 m
# 14: 3 n
# 15: 3 o
# 16: 3 p
# 17: 4 q
# 18: 4 r
# [...]
从小插图运行相同的命令:
k[o<=4, .(val=list(c(p))), by=o]
# o val
# 1: 1 a,b
# 2: 2 c,d,e,f,g,h,
# 3: 3 j,k,l,m,n,o,
# 4: 4 q,r,s,t,u,v,
现在,订单o=3
, val
列表不包含所有条目(请参阅 k
打印出来,它应该一直到 r
)。
这里有什么问题,我该如何解决?
最佳答案
感谢您指出这一点;非原子列的默认打印行为现在将包括 ...
作为截断时的后缀。
您的示例(使用 set.seed(1234)
现在将产生以下结果):
k[o<=4, .(val=list(c(p))), by=o]
# o val
# 1: 1 a,b
# 2: 2 c,d,e,f,g,h,...
# 3: 3 j,k,l,m,n,o,...
# 4: 4 q,r,s,t,u,v,...
关于R数据表: Why are values of concatenated list lost?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/47679701/
我是一名优秀的程序员,十分优秀!