where 函数

本文详细介绍了Pandas库中的where函数,用于根据条件表达式替换DataFrame或Series中不满足条件的值,支持inplace操作,并讨论了相关参数如cond、other、inplace等的使用和含义。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

Pandas 中的 where 函数

在 Pandas 中,where 函数用于替换不满足条件的值。具体来说,它返回一个与原始 DataFrame 或 Series 形状相同的新对象,但所有不满足条件的值都被替换为指定的值(默认为 NaN)。

对于 DataFrame:

DataFrame.where(cond, other=nan, inplace=False, axis=None, level=None, errors='raise', try_cast=False, raise_on_error=None)

对于 Series:

Series.where(cond, other=nan, inplace=False, axis=None, level=None, errors='raise', try_cast=False, raise_on_error=None)
参数解释
  • cond:条件表达式,与 DataFrame/Series 形状相同,用于确定哪些值应保留。
  • other:当条件为 False 时要替换成的值,默认为 NaN。
  • inplace:是否在原地修改 DataFrame/Series。默认为 False,即返回一个新的对象。
  • axis:用于应用条件的轴。对于 DataFrame,0 表示行,1 表示列。在 Series 中不使用。
  • level:用于多层索引的级别。在大多数情况下不使用。
  • errors:如何处理应用条件时的错误。默认为 'raise',即遇到错误时抛出异常。
  • try_cast:尝试将结果转换回原始数据类型。默认为 False。
  • raise_on_error:已弃用,不推荐使用。
import pandas as pd  
import numpy as np  
  
df = pd.DataFrame({  
    'A': [1, 2, 3],  
    'B': [4, 5, 6],  
    'C': [7, 8, 9]  
})
result = df.where(df > 4)  
print(result)

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值