我试图找出一列中只包含空字符串''的单元格的数量。df看起来像:
''
df
currency USD EUR ILS HKD
代码为:
df['currency'].str.contains(r'\s*')
但代码也将具有实际字符串值的单元格识别为包含空字符串。我想知道如何解决这个问题,它只检测只包含空字符串的单元格。
nue99wik1#
有好几种方式。使用numpy通常效率更高。
numpy
import pandas as pd, numpy as np df = pd.DataFrame({'currency':['USD','','EUR','']}) (df['currency'].values == '').sum() # 2 len(df[df['currency'] == '']) # 2 df.loc[df['currency'] == ''].count().iloc[0] # 2
blpfk2vs2#
找不到这个傻瓜,所以贴出一个答案:
import pandas as pd df = pd.DataFrame({'currency':['USD','','EUR','']}) c = (df['currency'] == '').sum() print(c)
回报率:
2
bxjv4tth3#
您可以使用它来计算空值
df.isnull().sum()
jxct1oxe4#
您可以获得所有为"“或null的单元格的概览。
df.eq('').sum() + df.isnull().sum()
要获得总和,请使用np.sum(df.eq('').sum() + df.isnull().sum())
np.sum(df.eq('').sum() + df.isnull().sum())
4条答案
按热度按时间nue99wik1#
有好几种方式。使用
numpy
通常效率更高。blpfk2vs2#
找不到这个傻瓜,所以贴出一个答案:
回报率:
bxjv4tth3#
您可以使用它来计算空值
jxct1oxe4#
您可以获得所有为"“或null的单元格的概览。
要获得总和,请使用
np.sum(df.eq('').sum() + df.isnull().sum())