【发布时间】:2021-07-22 23:16:20
【问题描述】:
我的第一个数据框看起来像这样:
| Department | Municipality | Location | Lat. | Long. |
|---|---|---|---|---|
| ANTIOQUIA | MEDELLIN | PALMITAS | 6.343341 | -75.69004 |
| ANTIOQUIA | MEDELLIN | SANTA ELENA | 6.209718 | -75.50191 |
| ANTIOQUIA | MEDELLIN | ALTAVISTA | 6.223150 | -75.62856 |
还有第二个数据框:
| Department_Name | Municipality_Name |
|---|---|
| ANTIOQUIA | MEDELLIN |
| ANTIOQUIA | MEDELLIN |
我想像这样随机合并两个数据框:
| Department_Name | Municipality_Name | Location | Lat | Long. |
|---|---|---|---|---|
| ANTIOQUIA | MEDELLIN | SANTA ELENA | 6.209718 | -75.50191 |
| ANTIOQUIA | MEDELLIN | PALMITAS | 6.343341 | -75.69004 |
关注这个话题:Join data frames and select random row when there are multiple matches这是我尝试过的
library(dplyr)
df2<-subset(df2, select=c(Department_Name, Municipality_Name, Location,Long., Lat.))
df2 <- df2 %>% rename(Department = Department_Name, Municipality=Municipality_Name)
df1[df2, on = .(Department, Municipality, Location,Long., Lat.),
{ri <- sample(.N, 1L)
.(Department = Department[ri], Municipality = Municipality[ri])}, by = .EACHI]
样本错误(.N,1L):找不到对象“.N”
我的编程背景不足以理解本主题中提供的代码,所以如果有人能帮助解决这个错误,那就太好了!
【问题讨论】: