首页  >  文章  >  后端开发  >  如何根据条件替换 DataFrame 列中的值?

如何根据条件替换 DataFrame 列中的值?

Mary-Kate Olsen
Mary-Kate Olsen原创
2024-10-30 23:51:301005浏览

How to Replace Values in a DataFrame Column Based on a Condition?

根据条件替换 DataFrame 列中的值

在此场景中,您有一个包含名为“First Season”的列的 DataFrame。您希望修改此列中的值,特别是将高于 1990 的值替换为值 1。虽然尝试使用 df.loc[(df['First Season'] > 1990)] = 1 选择值,它会替换所选行中的所有值,而不是仅针对“第一季”列。

要根据条件有效替换特定列中的值,必须在选择条件中明确指定该列。这是使用以下语法实现的:

<code class="python">df.loc[<mask>, <optional column(s)>]</code>

在您的情况下,掩码用于选择“第一季”值大于 1990 的行。下面的代码将实现所需的结果:

<code class="python">df.loc[df['First Season'] > 1990, 'First Season'] = 1</code>

或者,如果您打算创建布尔指标,您可以利用布尔条件生成布尔系列,并使用 .astype() 将 True 和 False 值转换为整数。此方法将生成一个包含 1(真)和 0(假)值的列。

<code class="python">df['First Season'] = (df['First Season'] > 1990).astype(int)</code>

以上是如何根据条件替换 DataFrame 列中的值?的详细内容。更多信息请关注PHP中文网其他相关文章!

声明:
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系admin@php.cn