相关疑难解决方法(0)

为什么rbindlist比rbind"更好"?

我正在阅读文档,data.table并且还注意到了一些关于SO的对话,这些对话rbindlist应该比我更好rbind.

我想知道为什么rbindlist比真正优秀的rbind场景更好?rbindlistrbind

在内存利用方面有什么优势吗?

r rbind data.table rbindlist

129
推荐指数
2
解决办法
8万
查看次数

使用不同列来rbind data.frames的有效方法

我有一组包含不同列的数据框.我想将它们按行组合成一个数据帧.我习惯plyr::rbind.fill这样做.我正在寻找能够更有效地完成这项工作的东西,但这与此处给出的答案类似

require(plyr)

set.seed(45)
sample.fun <- function() {
   nam <- sample(LETTERS, sample(5:15))
   val <- data.frame(matrix(sample(letters, length(nam)*10,replace=TRUE),nrow=10))
   setNames(val, nam)  
}
ll <- replicate(1e4, sample.fun())
rbind.fill(ll)
Run Code Online (Sandbox Code Playgroud)

r rbind data.table

29
推荐指数
3
解决办法
2万
查看次数

do.call(rbind,list)表示列数不均匀

我有一个列表,每个元素都是一个字符向量,长度不同我想将数据绑定为行,以便列名称"排列",如果有额外数据则创建列,如果有数据丢失然后创建NA

下面是我正在使用的数据的模拟示例

x <- list()
x[[1]] <- letters[seq(2,20,by=2)]
names(x[[1]]) <- LETTERS[c(1:length(x[[1]]))]
x[[2]] <- letters[seq(3,20, by=3)]
names(x[[2]]) <- LETTERS[seq(3,20, by=3)]
x[[3]] <- letters[seq(4,20, by=4)]
names(x[[3]]) <- LETTERS[seq(4,20, by=4)]
Run Code Online (Sandbox Code Playgroud)

如果我确定每个元素的格式是相同的,那么下面的行通常就是我要做的...

do.call(rbind,x)
Run Code Online (Sandbox Code Playgroud)

我希望有人提出了一个很好的小解决方案,匹配列名称并用空格填充空白,NA同时添加新列,如果在绑定过程中找到新列...

data-binding r list

17
推荐指数
2
解决办法
2万
查看次数

标签 统计

r ×3

data.table ×2

rbind ×2

data-binding ×1

list ×1

rbindlist ×1