gpt4 book ai didi

python - 如果其他列满足条件,则将操作应用于 Pandas 列

转载 作者:太空宇宙 更新时间:2023-11-04 01:15:23 27 4
gpt4 key购买 nike

我是 Python 的新手,完全 是 Pandas 的新手,所以如果这真的很简单,我深表歉意。我有一个数据框,我想对特定列中的所有元素进行操作,但前提是具有相同索引的不同列满足特定条件。

   float_col  int_col str_col
0 0.1 1 a
1 0.2 2 b
2 0.2 6 None
3 10.1 8 c
4 NaN -1 a

例如,如果 float_col 中的值大于 5,我想将 in_col(同一行)中的值乘以 2。我猜我应该使用 map 之一 applyapplymap 函数,但我不确定是哪个,或者如何。

最佳答案

可能有更优雅的方法来做到这一点,但是一旦您了解如何使用 loc 之类的东西来获取数据集的特定子集,您就可以这样做:

df.loc[df['float_col'] > 5, 'int_col'] = df.loc[df['float_col'] > 5, 'int_col'] * 2

你也可以像这样更简洁一点,因为 pandas 足够聪明,可以根据数据帧的索引匹配结果,并且只使用 中的相关数据df['int_col'] * 2 表达式:

df.loc[df['float_col'] > 5, 'int_col'] = df['int_col'] * 2

关于python - 如果其他列满足条件,则将操作应用于 Pandas 列,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/24988809/

27 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com