【发布时间】:2014-05-05 20:54:03
【问题描述】:
我做以下事情
library(data.table)
library(stringr)
dt <- data.table(string_column = paste(sample(c(letters, " "), 500000, replace = TRUE)
, sample(c(letters, " "), 500000, replace = TRUE)
, sample(1:500000)
, sep = " "), key = "string_column")
split_res <- dt[, list(name = unlist(str_split(string_column, '\\s+'))), by = string_column]
对于真实数据,大约需要。 1 小时处理dt(10M 行)并创建split_res(18M 行)
出于好奇 - 有没有办法加快进程?也许unlist + str_split 不是正确的做法?
【问题讨论】:
-
请发布最小样本数据
-
您当前的“string_column”变量中有重复的值。应该是这样吗?
-
不,抱歉,需要唯一的行(去掉 replace = TRUE )
标签: r substring data.table data-manipulation