【问题标题】:Maintain row names while merge 2 dataframes在合并 2 个数据框时保持行名
【发布时间】:2018-09-26 06:16:09
【问题描述】:

我有 2 个数据框,我合并它们,我想维护第一个数据框的行名df1a

df1a = data.frame(Customer = c(1:8),  Product = LETTERS[seq( from = 1, to = 8 )])
df1b = data.frame(Customer = c(11:18), Product = LETTERS[seq( from = 1, to = 8 )])
rownames(df1a)<-LETTERS[seq( from = 1, to = 8 )]
merge(df1a, y = df1b, by = "Product")

【问题讨论】:

  • df1a$rn &lt;- rownames(df1a) ...然后合并...

标签: r merge


【解决方案1】:

一个dplyr-tibble的方法都可以,

library(tidyverse)

column_to_rownames(left_join(rownames_to_column(df1a), df1b, by = 'Product'), 'rowname')
  Customer.x Product Customer.y
A          1       A         11
B          2       B         12
C          3       C         13
D          4       D         14
E          5       E         15
F          6       F         16
G          7       G         17
H          8       H         18

【讨论】:

  • 为什么改变主意 :+)
  • @TimBiegeleisen 这不是一个完全的骗局,我发现大多数是为了过滤而不是合并...... :)
猜你喜欢
  • 2013-07-26
  • 2013-05-16
  • 1970-01-01
  • 1970-01-01
  • 2018-03-09
  • 2022-01-25
  • 1970-01-01
相关资源
最近更新 更多