Explore Courses Blog Tutorials Interview Questions
0 votes
in Data Science by (17.6k points)

 I have a really big DataFrame and I was wondering if there was short (one or two liner) way to get the a count of non-NaN entries in a DataFrame. I don't want to do this one column at a time as I have close to 1000 columns.

df1 = pd.DataFrame([(1,2,None),(None,4,None),(5,None,7),(5,None,None)], 

                    columns=['a','b','d'], index = ['A', 'B','C','D'])

     a    b    d

A    1    2   NaN

B   NaN   4    NaN

C   5    NaN   7

D   5    NaN   NaN


a: 3

b: 2

d: 1

1 Answer

0 votes
by (41.4k points)

Use count() method which will returns the number of non-NaN values in each column:

>>> df1.count()

a    3

b    2

d    1

dtype: int64

Browse Categories