I’m currently working on a data frame like the one below:
What I want to do is to drop the rows that only contain "NA" values. The result should be something like this:
I’ve tried using the pandas
drop() function but drops every row with at least one "NA" value. In that case, the row for Justin Timberlake would be dropped but that’s not what I need.
df.dropna() and set
how='all' meaning If all values are
NA, drop that row or column. then set the
df = df.dropna(how='all', subset=['week1', 'week2', 'week3', 'week4']) print(df)
Or Keep only the rows with at least 2 non-NA values.
df = df.dropna(thresh=2) print(df)
artist week1 week2 week3 week4 0 Drake 2.0 2.0 3.0 1.0 2 Bruno Mars 3.0 3.0 4.0 2.0 4 Justin Timberlake 2.0 2.0 NaN 1.0