data.table相关内容
以下代码确实有效,但我在 data.table 帮助和小插图中找不到有关“.."(点点)运算符的任何文档: 库(data.table)cols
..
有时我需要计算 data.table 中一列或另一列中非 NA 元素的数量.最好的 data.table 定制方法是什么? 为了具体起见,让我们使用这个: DT
..
我正在尝试计算每行不包含 NA 的列数,并将该值放入该行的新列中. 示例数据: 库(data.table)a = c(1,2,3,4,NA)b = c(6,NA,8,9,10)c = c(11,12,NA,14,15)d = data.table(a,b,c)>da b c1:1 6 112:2 不适用 123: 3 8 不适用4:4 9 145:不适用 10 15 我想要的输出将包括一
..
我在尝试将数据表的多个列转换为因子列时遇到了意外问题.我转载如下: 库(data.table)tst
..
我有一个 data.table 有很多缺失值,我想要一个变量,它为每组中的第一个非缺失值提供 1. 假设我有这样一个data.table: 库(data.table)DT 现在在开头、结尾和中间都有缺失.我试过两个版本,一个是: DT[min(which(!is.na(Petal.Width))),first_available:=1,by=Species] 但它只找到全局最小值(
..
[更新 1:正如 Matthew Dowle 所指出的,我在 R-Forge 上使用的是 data.table 版本 1.6.7,而不是 CRAN.您不会看到与早期版本的 data.table 相同的行为.] 作为背景:我正在移植一些小实用程序函数来对数据框的行或数据框对(即每一行是集合中的一个元素)进行集合操作,例如unique - 从列表、联合、交集、集合差异等创建集合.这些模仿 Mat
..
我正在编写一个非常简单的函数来汇总 data.tables 的列.我一次将一列传递给函数,然后进行一些诊断以找出汇总选项,然后进行汇总.我在 data.table 中这样做是为了允许一些非常大的数据集. 所以,我使用 .SDcols 传入列进行汇总,并在 j 部分的 .SD 上使用函数一个 data.table 表达式.由于我一次只传递一列,因此我没有使用 lapply.我发现有些功能有效,
..
我正在试验 gWidgetsWWW 并遇到了一个奇怪的错误.我创建了一个带有处理程序的按钮来 knit2html 使用 data.table 赋值运算符“:="的报告.报告返回此错误: 错误::= 被定义为仅在 j 中使用,并且(当前)仅使用一次;IE.,DT[i,col:=1L] 和 DT[,newcol:=sum(colB),by=colA] 可以,但不行DT[i,col]:=1L,不是
..
我有一个 data.table 像: 库(data.table)小部件
..
如何通过数字范围对 data.table 进行子集化,以使用二分搜索? 例如: require(data.table)set.seed(1)x5 & y 上面没有使用键(矢量扫描),并且加速不是那么显着.使用二进制搜索对 data.table 的数字范围进行子集化的语法是什么?我在文档中找不到一个很好的例子;如果有人可以使用上面的玩具 data.table 提供示例,那将会很有帮助.
..
我有一个 data.table(约 3000 万行),由 POSIXct 格式的 datetime 列和一个 id 组成 列和其他一些列(在示例中,我只留下了一个不相关的列 x 来证明还有其他列需要保留).dput 在帖子的底部. head(DT)# 日期时间 x id#1:2016-04-28 16:20:18 0.02461368 1#2:2016-04-28 16:41:34 0.8895
..
我有两个 data.tables.我想计算与另一个表中的表组合匹配的行数.我检查了 data.table 文档,但没有找到答案.我正在使用 data.table 1.9.2. DT1 现在我想计算 DT2 中 (3, 8) 对和 (2, 3) 对的数量. setkey(DT2, w, x)nrow(DT2[J(3, 8), nomatch=0])# [1] 3 ## 好!nrow(DT2[
..
对于一个很明显我通常在 Python/pandas 中工作的问题,我深表歉意,但我一直坚持这一点.如何使用字符串选择 data.table 列? dt$"字符串"dt$as.name("字符串")dt$get("字符串") 我确信这非常简单,但我不明白.非常感谢任何帮助! ------------- 已编辑添加 ---------- 在下面的一些有用的评论和提示之后,我想我已经缩小
..
假设我有一个 data.table: x 我想知道 x 中每个 group 有多少行: x[, .N, by="group"]# 第 N 组# 1: 一个 2# 2: b 1 问题:有没有办法强制上述by="group"考虑因素group的所有层次? 请注意,由于我在表中没有任何带有 group 'c' 的行,因此我没有得到 c 的行. 期望的输出: x[, .N, by=
..
我有以下示例 data.table: dtb 例如,我想使用 colSums 按 id 聚合所有列(a 和 b,尽管它们应该分开).这样做的正确方法是什么?以下方法不起作用: dtb[,colSums, by="id"] 这只是一个示例,我的表有很多列,所以我想避免在函数名中指定所有列 解决方案 这实际上是我一直在寻找的,并且在常见问题解答中提到: dtb[,lapply(.
..
我想了解 R 在将参数传递给函数、创建变量副本等与内存使用有关的逻辑.它何时实际创建变量的副本而不是仅传递对该变量的引用?我特别好奇的情况是: f
..
如果我理解正确,data.table 的 duplicated() 函数返回一个不包含第一次出现重复记录的逻辑向量.标记第一次出现的最佳方法是什么?在 base::duplicated() 的情况下,我通过反序函数的析取解决了这个问题:myDups
..
计算两个数据表之和时,NA+n=NA. >dt1 我不想用 0 替换所有 NA.我想要的是 NA+NA=NA 和 NA+n=n 以获得以下结果: 名称 1 21:乔 0 52:安 NA 3 这是如何在 R 中完成的? 更新:删除了 dt1 中的错字 解决方案 你可以定义你自己的函数来做你想做的事情 加
..
有没有办法使用 Rcpp 和/或 RcppArmadillo 将 data.table 对象传递给 c++ 函数,而无需手动转换为 data.table 到 data.frame?在下面的示例中,test_rcpp(X2) 和 test_arma(X2) 均因 c++ 异常(未知原因) 而失败. R 代码 X=data.frame(c(1:100),c(1:100))X2=数据表(X)te
..
这是我的数据表的样子: 库(data.table)dt
..