如何确定一个字段在pandas数据框中是否不为空(‘’)且不为空?
我正在使用if not value and pd.notna(value):
是正确的,还是有更好的API可以直接处理这个逻辑?
发布于 2021-01-13 15:55:44
如何将空值更改为NaN,然后检查。Kr。
df = pd.DataFrame({"a": [np.nan, 1, ""]})
df = df.replace('', np.nan)
print(df.isnull())它返回:
a
0 True
1 False
2 True另一种方法是通过空''填充NaN,然后检查:
df = pd.DataFrame({"a": [np.nan, 1, ""]})
df = df.fillna('')
print(df=='')它返回:
a
0 True
1 False
2 True发布于 2021-01-13 15:56:51
您可以将数据帧中的字段替换为空字符串或仅包含空格的np.nan或None,然后使用notna查找有效值。
df.replace(r'^\s*$', np.nan, regex=True, inplace=True)此外,if not value and pd.notna(value)不适用于空字符串或仅包含空格的字段:
value = ''
not value and pd.notna(value) # this is True
value = None
not value and pd.notna(value) # this is False
value = np.nan
not value and pd.notna(value) # this is Falsehttps://stackoverflow.com/questions/65696475
复制相似问题