gpt4 book ai didi

R数据表: Why are values of concatenated list lost?

转载 作者:行者123 更新时间:2023-12-02 02:58:57 24 4
gpt4 key购买 nike

我正在学习介绍 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/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com