Pandas DataFrame:根据条件替换特定列值
在 DataFrame 中,通常需要根据条件替换列中的特定值预定义的条件。考虑以下 DataFrame:
Team First Season Total Games 0 Dallas Cowboys 1960 894 1 Chicago Bears 1920 1357 2 Green Bay Packers 1921 1339 3 Miami Dolphins 1966 792 4 Baltimore Ravens 1996 326 5 San Franciso 49ers 1950 1003
假设我们需要将“第一季”列中大于 1990 的所有值替换为 1。要实现此目的,可以使用以下命令:
df.loc[df['First Season'] > 1990, 'First Season'] = 1
该行根据方括号中指定的条件选择性地定位“First Season”列(df['First Season'] > 1990)。 = 符号将值 1 分配给所选元素,确保仅“第一季”列受到影响。
生成的 DataFrame 将如下所示:
Team First Season Total Games 0 Dallas Cowboys 1960 894 1 Chicago Bears 1920 1357 2 Green Bay Packers 1921 1339 3 Miami Dolphins 1966 792 4 Baltimore Ravens 1 326 5 San Franciso 49ers 1950 1003
重要的是请注意,此操作的语法涉及两个关键组件:
此外,如果目标是创建布尔指示器而不是替换值,则条件可用于生成一个布尔系列,然后可以通过将其数据类型转换为 int 将其转换为整数。这会将 True 和 False 值分别转换为 1 和 0。
以上是如何根据条件替换特定 Pandas DataFrame 列中的值?的详细内容。更多信息请关注PHP中文网其他相关文章!