Pandas统计dataframe列中为NaN的行数

选中文字可对指定文章内容进行评论啦,绿色背景文字可以点击查看评论额。

这分为两种情况:缺少值NaN和字符串NaN。

缺少值NaN

df = pd.DataFrame({'value':[np.nan, np.nan, 1, 5, 7]})
print (df)
value
0 NaN
1 NaN
2 1.0
3 5.0
4 7.0
count = df['value'].isna().sum()
#或者 count = df['value'].isnull().sum()
print (count)
2

判断列的值是否为nan,可以使用isna()或者isnull()函数。

字符串NaN

df = pd.DataFrame({'value':['NaN', 'NaN', 1, 5, 'NaN']})
print (df)
value
0 NaN
1 NaN
2 2
3 5
4 NaN
count = df['value'].eq('NaN').sum()
#或者count = (df['value'] == 'NaN').sum()
print (count)
3


版权声明:著作权归作者所有。

相关推荐

Java 9模块声明中requires and requires transitive的区别

可读性(Readability)首先要理解模块的可读性module bar{     requires drink; } bar requires drink意味着:bar模块强制要求存在drink模块,这称为可靠配置。bar模块可以读入drink模块的文件,这称为可读性。bar模块可以访问drink模块的代码,这称为

Spring Controller统计数据库的百万行数据(Aggregate Millions of Database Rows in a Spring Controller)

了解如何使用Spring和Speedment在Java中执行超快速聚合,即使是具有数百万行的大型数据集。只要API与数据库的结构相匹配,Spring Framework就可以使用JPA和Spring Web快速地建立关系型数据库的RESTful API。 然而,在许多API中,REST端不对应于特定的表,而是对应于一些聚合的字段。在这些情况下,你仍然需要编写

Linux统计目录下所有文件的行数

这里提供两种方法来统计目录下所有文件的行数:1、结合使用find和wc:find . -name '*.pl' | xargs wc -l 另外,此命令也可以改为:( find ./ -name '*.pl' -print0 | xargs -0&n

Pandas对应SQL的in和not in实现

在Pandas提供了pd.isin(),使用它可以实现SQL的in和not in。not in 对应于:~a.isin(b) 示例:假如有以下dataframe数据,它包含了列data如下:>>> df   data 0   a 1   b 2 &nb

Spark DataFrame join后移除重复的列

在Spark,两个DataFrame做join操作后,会出现重复的列。有两种方法可以用来移除重复的列。方法一:join表达式使用字符串数组(用于join的列)df1.join(df2, Seq("id","name"),"left") 这里DataFrame df1和df2使用了id和name两列来做join,返回的结

Pandas dataframe重命名列名

Pandas重命名有三种方法:1、使用columns重命名>>> df = pd.DataFrame({'$a':[1,2], '$b': [10,20]}) >>> df.columns = ['a', 'b'] >>> df  &n

R把dataframe里的NA值替换为0

在R里可以使用来把NA值替换为0:df[is.na(d)] <- 0 示例> m <- matrix(sample(c(NA, 1:10), 100, replace = TRUE), 10) > d <- as.data.fra