0
假设我有一个非常大的数据框,有2列和0.5 mil的行。 例如,几行可能是这样的:R解析大数据帧 - 速度优化
# Start End
# 89 100
# 93 120
# 95 125
# 101 NA
# 115 NA
# 123 NA
# 124 NA
我想这个数据帧处理,输出看起来 像这样的数据帧:
# End Start
# 100 89, 93, 95
# 120 101, 115
# 125 123, 124
什么是绝对的考虑到有 .5万行,最快的方法来做到这一点? bgoldst提出了这段令人敬畏的代码:
# m is a large two column data frame
end <- na.omit(m[,'V2']);
out <- data.frame(End=end,
Start=unname(sapply(split(m[,'V1'],findInterval(m[,'V1'],end [as.character(0:c(length(end)-1))],paste,collapse='.')))
但是这需要一点点时间。
感谢您的帮助!
可能的重复帖子的答案没有解决时间问题。 bgoldst的答案产生了期望的结果,但在我的电脑上很慢。我想知道是否还有更多的事情可以做,让这个运行更快。
上可能重复后这些问题的答案并没有解决问题的时间。 – ALKI
请考虑使用类似于C/C++的东西。 – user1436187
这是'结束< - na.omit(m [,'V2']);'慢? – user1436187