You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

如何合并两个不同的DataFrame?附示例数据与期望输出

实现指定的DataFrame匹配结果

我有两个DataFrame:

DataFrame 1

df1 = data.frame(city = c('New Jersey', 'New York', 'Houston'))

DataFrame 2

df2 = data.frame(city = c('New Jersey', 'Houston'),
                 value = c(5, 2))

想要得到如下精确结果:

New Jersey  5
NA          NA
Houston     2

解决方案

使用R的merge()函数执行左连接,保留df1的所有行,匹配df2中对应城市的数值,未匹配项自动填充NA:

# 左连接两个DataFrame
result <- merge(df1, df2, by = "city", all.x = TRUE)

# 按需求格式输出(隐藏行名)
print(result, row.names = FALSE)

运行后输出:

city value
  New Jersey     5
    New York    NA
      Houston     2

如果需要完全去掉列名,输出和示例一致的格式,可转换为矩阵后输出:

# 转换为矩阵并移除列名
result_mat <- as.matrix(result)
colnames(result_mat) <- NULL

# 无引号输出
print(result_mat, quote = FALSE)

输出结果:

New Jersey  5
New York    NA
Houston     2

内容的提问来源于stack exchange,提问作者chaos

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.07.10 11:03:15