目录

搜索

输入搜索字词或模块,类或函数名称。

pandas.Series.mask

Series.mask(cond, other=nan, inplace=False, axis=None, level=None, try_cast=False, raise_on_error=True)[source]

返回一个与self相同形状的对象,并且其对应的条目来自self,其中cond是False,否则是来自其他。

参数:

cond:boolean NDFrame,array或callable

如果cond是可调用的,则它在NDFrame上计算,并应返回布尔NDFrame或数组。callable不能改变输入NDFrame(虽然pandas不检查它)。

版本0.18.1中的新功能。

可调用可以用作cond。

其他:标量,NDFrame或可调用

如果other是可调用的,它将在NDFrame上计算,并应返回标量或NDFrame。callable不能改变输入NDFrame(虽然pandas不检查它)。

版本0.18.1中的新功能。

一个callable可以用作其他。

inplace:boolean,default False

是否对数据执行就地操作

axis:如果需要,对齐轴,默认无

级别:如果需要,对齐级别,默认无

try_cast:boolean,default False

尝试将结果转换回输入类型(如果可能),

raise_on_error:boolean,default True

是否针对无效的数据类型(例如,尝试在字符串上的位置)

返回:

wh:与呼叫者类型相同

也可以看看

DataFrame.where()

笔记

掩码方法是if-then成语的应用。对于调用DataFrame中的每个元素,如果condFalse,则使用元素;否则使用来自DataFrame other的相应元素。

DataFrame.where()的签名与numpy.where()不同。Roughly df1.where(m, df2) is equivalent to np.where(m, df1, df2).

有关详细信息和示例,请参阅indexing中的mask文档。

例子

>>> s = pd.Series(range(5))
>>> s.where(s > 0)
0    NaN
1    1.0
2    2.0
3    3.0
4    4.0
>>> df = pd.DataFrame(np.arange(10).reshape(-1, 2), columns=['A', 'B'])
>>> m = df % 3 == 0
>>> df.where(m, -df)
   A  B
0  0 -1
1 -2  3
2 -4 -5
3  6 -7
4 -8  9
>>> df.where(m, -df) == np.where(m, df, -df)
      A     B
0  True  True
1  True  True
2  True  True
3  True  True
4  True  True
>>> df.where(m, -df) == df.mask(~m, -df)
      A     B
0  True  True
1  True  True
2  True  True
3  True  True
4  True  True
Scroll To Top