【发布时间】:2021-07-21 16:45:32
【问题描述】:
我有两个数据框 df1 和 df2。 df1 作为两列,在多行中具有不同的值。它看起来类似于以下内容:
| col_a | col_b |
|---|---|
| aa | 50 |
| bb | 132 |
| dd | 543 |
df2 具有与以下类似的结构:
| col_a | col__b | col_x | col_y | col_z |
|---|---|---|---|---|
| aa | xy | xy | xy | 2 |
| aa | xy | xy | xy | 3 |
| bb | xy | xy | xy | 14 |
| bb | xy | xy | xy | 9 |
| bb | xy | xy | xy | 6 |
| cc | xy | xy | xy | 0 |
| cc | xy | xy | xy | 2 |
| dd | xy | xy | xy | 0 |
| dd | xy | xy | xy | 2 |
我想通过使用来自df1 的值的循环过滤df2,这样在循环的第一次迭代之后我最终得到以下结果:
| col_a | col_b | col_x | col_y | col_z |
|---|---|---|---|---|
| aa | xy | xy | xy | 2 |
| aa | xy | xy | xy | 3 |
第二次迭代后,我应该有以下内容:
| col_a | col_b | col_x | col_y | col_z |
|---|---|---|---|---|
| bb | xy | xy | xy | 14 |
| bb | xy | xy | xy | 9 |
| bb | xy | xy | xy | 6 |
我不希望过滤器永久修改df2。后续迭代应根据 df1 的 col_a 值过滤 df2。
我不知道如何实现这一点,因此我将不胜感激。
【问题讨论】:
-
这能回答你的问题吗? Splitting dataframe into multiple dataframes
-
@AnuragDabas 不完全是因为虽然我想过滤数据框。我不拆分数据框。相反,我只想暂时过滤数据框,以便可以对其列进行一些算术运算,然后移至第二组数据框 2 中的值并再次执行相同操作。
-
所以要根据df1的col_a过滤df2?