繁体   English   中英

熊猫根据其他数据框的条件对行进行划分

[英]Pandas divide rows based on condition from another dataframe

我有2个如下的pandas数据框:

**dataframe_1**

|col_1|col_2|col_3|
|a|2|2|
|b|4|4|
|a|2|2|
**dataframe_2**

|col_1|col_2|col_3|
|a|2|2|
|b|2|2|

我如何划分dataframe_1 / dataframe_2,以便仅dataframe_1中的col_1 a被dataframe_2中的col_1 a划分,并且对于b类似。

预期产量:

|col_1|col_2|col_3|
|a|1|1|
|b|2|2|
|a|1|1|

两个表中的列数相同。

编辑:我已经在dataframe_1上使用iterrows并检查col_1并除以dataframe_2值来完成此操作。 我只是想看看是否还有其他方法可以做到这一点。

斯科特·波士顿的答案很完美。

尝试使用set_index并让熊猫处理数据对齐:

df1 = df1.set_index('col_1')

df2 = df2.set_index('col_1')

(df1 / df2).reset_index()

输出:

  col_1  col_2  col_3
0     a    1.0    1.0
1     a    1.0    1.0
2     b    2.0    2.0

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM