相关疑难解决方法(0)

在R中合并/加入data.frames的最快方法是什么?

例如(不确定是否最具代表性的例子):

N <- 1e6
d1 <- data.frame(x=sample(N,N), y1=rnorm(N))
d2 <- data.frame(x=sample(N,N), y2=rnorm(N))
Run Code Online (Sandbox Code Playgroud)

这是我到目前为止所得到的:

d <- merge(d1,d2)
# 7.6 sec

library(plyr)
d <- join(d1,d2)
# 2.9 sec

library(data.table)
dt1 <- data.table(d1, key="x")
dt2 <- data.table(d2, key="x")
d <- data.frame( dt1[dt2,list(x,y1,y2=dt2$y2)] )
# 4.9 sec

library(sqldf)
sqldf()
sqldf("create index ix1 on d1(x)")
sqldf("create index ix2 on d2(x)")
d <- sqldf("select * from d1 inner join d2 on d1.x=d2.x")
sqldf()
# 17.4 sec
Run Code Online (Sandbox Code Playgroud)

performance merge join r data.table

94
推荐指数
4
解决办法
4万
查看次数

如何基于两列组合两个数据帧?

我知道我可以使用它plyr和它的朋友组合数据帧,merge但是到目前为止我不知道如何根据2列合并两个数据帧和多列?

merge r dataframe

94
推荐指数
3
解决办法
23万
查看次数

如何在R中执行vlookup并填写(如在Excel中)?

我有一个大约105000行和30列的数据集.我有一个分类变量,我想将它分配给一个数字.在Excel中,我可能会做一些事情VLOOKUP并填写.

我将如何做同样的事情R

基本上,我所拥有的是一个HouseType变量,我需要计算HouseTypeNo.以下是一些示例数据:

HouseType HouseTypeNo
Semi            1
Single          2
Row             3
Single          2
Apartment       4
Apartment       4
Row             3
Run Code Online (Sandbox Code Playgroud)

lookup r

76
推荐指数
7
解决办法
15万
查看次数

标签 统计

r ×3

merge ×2

data.table ×1

dataframe ×1

join ×1

lookup ×1

performance ×1