是否可以合并两个data.frame而两个df中没有完全相同的变量。
示例:
df1 <- data.frame(C=c("1Q","4R"),B= c("A","plane"))
df <- data.frame(A=c(1,2),B=c("A (Inc", "plane (Inc)"))
> df
# A B
#1 1 A (Inc
#2 2 plane (Inc)
> df1
# C B
#1 1Q A
#2 4R plane
是否可以合并df1和df?在这里,我不想预先修改dfs中的数据以进行匹配。我希望合并丢弃(Inc),同时将其保留在dfs中。在这个愚蠢的例子中,一个明显的解决方案是cbind()
,但它确实是我正在寻找的合并。
我合并的data.frame将是:
df
# C B A B
# 1 1Q A 1 A (Inc
# 2 4R plane 2 plane (Inc)
答案 0 :(得分:1)
您可以这样继续:
> merge(df1,transform(df, B = gsub("[[:space:]]*\\(Inc.*$","",df$B), B1=df$B))
B C A B1
1 A 1Q 1 A (Inc
2 plane 4R 2 plane (Inc)