gpt4 book ai didi

r - 使用条件子集 data.table

转载 作者:行者123 更新时间:2023-12-04 23:52:43 25 4
gpt4 key购买 nike

如何对大型 data.table(data.table 包)的子样本进行采样?是否有更优雅的方式来执行以下操作

DT<- data.table(cbind(site = rep(letters[1:2], 1000), value = runif(2000)))
DT[site=="a"][sample(1:nrow(DT[site=="a"]), 100)]

猜猜有一个简单的解决方案,但无法选择正确的措辞进行搜索。

更新:
更一般地说,我如何访问 data.table 的 i 中的行号没有为行号创建临时列的参数?

最佳答案

使用 data.table 的最大好处之一是你可以为你的数据设置一个键。
使用 key然后 .I (内置变量。有关更多信息,请参阅 ?data.table)您可以使用:

setkey(DT, site)
DT[DT["a", sample(.I, 100)]]

至于你的第二个问题 "how can I access a row number in data.table's i argument"
# Just use the number directly:
DT[17]

关于r - 使用条件子集 data.table,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/20280709/

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