gpt4 book ai didi

r - 理解R中data.table中的.I

转载 作者:行者123 更新时间:2023-12-03 11:24:54 25 4
gpt4 key购买 nike

我在玩 data.table我遇到了一个我不确定我是否完全理解的区别。给定以下数据集:

library(data.table)

set.seed(400)
DT <- data.table(x = sample(LETTERS[1:5], 20, TRUE), key = "x"); DT

你能解释一下以下表达之间的区别吗?

1) DT[J("E"), .I]
2) DT[ , .I[x == "E"] ]
3) DT[x == "E", .I]

最佳答案

set.seed(400)
library(data.table)

DT <- data.table(x = sample(LETTERS[1:5], 20, TRUE), key = "x"); DT

1)
DT[  , .I[x == "E"] ] # [1] 18 19 20

是一个数据表,其中 .I是表示 E的行号的向量在原始数据集中 DT
2)
DT[J("E")  , .I]   # [1] 1 2 3

DT["E" , .I] # [1] 1 2 3

DT[x == "E", .I] # [1] 1 2 3

都是一样的,产生一个向量,其中 .I s 是表示 E 行号的向量新子集数​​据中的 s

关于r - 理解R中data.table中的.I,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/23585999/

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