9得票2回答
如何在函数内编写facet_wrap(ggplot2)

我写了一个画条形图的函数。但是当我使用facet wrap时,符号'~'使事情变得困难。 rf.funct <- function(dat, predictor, feature){ ggplot(get(dat), aes(get(predictor), N)) + ge...

8得票2回答
在数据框或数据表中连接匹配的列

我有以下数据框: a <- data.frame(id = 1:3, v1 = c('a', NA, NA), v2 = c(NA, 'b', 'c')) b <- data.frame(id = 1:3, v1 = c(NA, 'B', 'C'), v2 = c("A", NA...

10得票2回答
在R的data.table中评估表达式

我有以下的data.table:> dt = data.table(expr = c("a + b", "a - b", "a * b", "a / b"), a = c(1,2,3,4), b = c(5,6,7,8)) > dt expr a b 1: a + b 1 ...

11得票1回答
使用多个列名称的字符向量以编程方式对数据表进行排序

我需要按照提供的变量名称的字符向量对data.table进行多列排序。 到目前为止,这是我的做法:DT = data.table(x = rep(c("b","a","c"), each = 3), y = c(1,3,6), v =...

7得票3回答
R data.table 每组匹配列名的点积

我有一个数据表和一个已配合系数的数据表。我想为每一行计算拟合值。 dt = data.table(a = rep(c("x","y"), each = 5), b = rnorm(10), c = rnorm(10), d = rnorm(10)) coefs = data.table(a ...

7得票2回答
使用data.table查找重叠区间的组

我有一些时间区间,需要找到哪些时间区间能够形成连续的组合。 在这个最小化实验中,我有Interval.id, Interval.start和Interval.end。 我想计算Wanted.column。 DT <- data.table(Interval.id=c(1L, 2L, ...

86得票1回答
将数据框转换为数据表,无需复制

我有一个非常大的数据框(大小达到几个 GB),我想将其转换为 data.table。使用 as.data.table 会创建一个数据框的副本,这意味着我需要的可用内存至少是数据大小的两倍。有没有一种方法可以在不复制的情况下进行转换? 以下是一个简单的示例:library(data.table...

42得票2回答
使用data.table(带有fread)快速读取和合并多个文件

我有几个结构相同的txt文件。现在我想使用fread将它们读入R,然后将它们合并成一个更大的数据集。## First put all file names into a list library(data.table) all.files <- list.files(path = "C...

20得票2回答
如何通过分组加快子集查询速度

我曾使用dplyr进行我的数据处理,但有些计算速度较慢。特别是通过组进行子集操作时,据我所知,当分组数很多时,dplyr 的运算速度较慢。根据这个基准测试,data.table可能更快,因此我开始学习 data.table。 以下是如何使用250k行和约230k个组的真实数据的近似重现方法:...

9得票3回答
如何从data.table构建一个管道,再通过magrittr返回到data.table

我希望将data.table的流水线技术与magrittr的流水线技术结合起来。我可以从data.table到%>%,但是我不知道如何回到[][] data.table的流水线技术中。 以下是示例: > tbl = data.table(grp=c(1,1,1,2,2,2,3,3,3...