📅  最后修改于: 2020-10-29 02:50:45             🧑  作者: Mango
where()方法的主要任务是检查数据帧是否存在一个或多个条件,并相应地返回结果。默认情况下,如果行不满足条件,则将其填充为NaN值。
DataFrame.where(cond, other=nan, inplace=False, axis=None, level=None, errors='raise', try_cast=False, raise_on_error=None)
other
:用用户定义的对象替换不满足条件的行;默认值为NaN。import pandas as pd
import numpy as np
a = pd.Series(range(5))
a.where(a > 0)
a.mask(a > 0)
a.where(a > 1, 10)
info = pd.DataFrame(np.arange(10).reshape(-1, 2), columns=['A', 'B'])
info
b = info % 3 == 0
info.where(b, -info)
info.where(b, -info) == np.where(b, info, -info)
info.where(b, -info) == info.mask(~b, -info)
输出量
A B
0 True True
1 True True
2 True True
3 True True
4 True True