有一个标志:
In [11]: df = pd.Dataframe([["foo1"], ["foo2"], ["bar"], [np.nan]], columns=['a'])In [12]: df.a.str.contains("foo")Out[12]:0 True1 True2 False3 NaNName: a, dtype: objectIn [13]: df.a.str.contains("foo", na=False)Out[13]:0 True1 True2 False3 FalseName: a, dtype: bool参见
str.replace文档:
na:默认NaN,填充缺失值的值。
因此,您可以执行以下操作:
In [21]: df.loc[df.a.str.contains("foo", na=False)]Out[21]: a0 foo11 foo2


