[英]Combing two dataframes that have matching columns but varying rows for each matching value in the columns
我有两个 DataFrame,它们具有匹配的匹配列,但每个 DF 都有不同的关联列。 我想组合两个 DF,不是复制行,而是在没有值的地方添加 nan。 根据我在 SO/Internet 上的发现,我尝试过的任何事情都以重复值结束。
df1
coll_id | 项目名 | item_val |
---|---|---|
1 | item_1 | 20 |
1 | item_2 | 200 |
2 | item_3 | 5 |
2 | item_4 | 13 |
df2
coll_id | stat_name |
---|---|
1 | stat_1 |
1 | stat_2 |
1 | stat_3 |
2 | stat_4 |
combined = pd.merge(df1, df2, on = 'coll_id', how = 'outer')
我得到的结果看起来像这样
coll_id | 项目名 | item_val | stat_name |
---|---|---|---|
1 | item_1 | 20 | stat_1 |
1 | item_1 | 20 | stat_2 |
1 | item_1 | 20 | stat_3 |
1 | item_2 | 200 | stat_1 |
1 | item_2 | 200 | stat_2 |
1 | item_2 | 200 | stat_3 |
我正在寻找类似于下面看到的结果,因此行中没有重复,但所有数据都已计算在内。
coll_id | 项目名 | item_val | stat_name |
---|---|---|---|
1 | item_1 | 20 | stat_1 |
1 | 楠 | 楠 | stat_2 |
1 | 楠 | 楠 | stat_3 |
1 | item_2 | 200 | stat_1 |
1 | 楠 | 楠 | stat_2 |
1 | 楠 | 楠 | stat_3 |
干杯
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.