~ 5 min read

Using pandas dropna() Function for Handling Missing Values.

By: Adam Richardson
Share:

What is the dropna() function in pandas?

The dropna() function in pandas is a powerful tool used to remove missing or null data in a DataFrame. This function comes in handy when working with large datasets that contain alot of missing data. It helps us to easily remove rows with any missing data thereby cleaning and organizing the data for further analysis.

To use this function, we first need to have a DataFrame. For example, consider a DataFrame called df as shown below;

import pandas as pd

df = pd.DataFrame({'A': [1, 2, 3, None, 5], 'B': [None, 2, 3, 4, None], 'C': [1, 2, 3, 4, 5]})

print(df)

The output will be:

     A    B  C
0  1.0  NaN  1
1  2.0  2.0  2
2  3.0  3.0  3
3  NaN  4.0  4
4  5.0  NaN  5

As we can see, df contains missing values denoted by NaN. To remove rows with missing values from this DataFrame, we can use the dropna() function as follows;

df = df.dropna()

print(df)

The output will be:

     A    B  C
1  2.0  2.0  2
2  3.0  3.0  3

As we can see, all rows with missing data have been removed. The dropna() function has many parameters to allow for more advanced usage, such as removing rows with a certain amount of missing data, removing columns with missing data, and more.

In summary, dropna() function has made data cleaning and organization easy for developers working with large datasets.

How to use the dropna() function to remove missing values?

The dropna() function is used in pandas to remove missing or null data from a DataFrame. This function enables developers to clean and organize their data before performing further analysis.

To use the dropna() function, we first need to have a DataFrame. For example, consider a DataFrame called df as shown below;

import pandas as pd

df = pd.DataFrame({'A': [1, 2, 3, None, 5], 'B': [None, 2, 3, 4, None], 'C': [1, 2, 3, 4, 5]})

print(df)

The output will be:

     A    B  C
0  1.0  NaN  1
1  2.0  2.0  2
2  3.0  3.0  3
3  NaN  4.0  4
4  5.0  NaN  5

As we can see, df contains missing or null values denoted by NaN. To remove rows with missing values from this DataFrame, we can use the dropna() function as follows;

df = df.dropna()

print(df)

The output will be:

     A    B  C
1  2.0  2.0  2
2  3.0  3.0  3

As we can see, all rows with missing data have been removed. We can also specify the axis parameter to remove columns instead of rows using the dropna() function as shown below;

df = pd.DataFrame({'A': [1, 2, 3, None, 5], 'B': [None, 2, 3, 4, None], 'C': [1, 2, 3, None, 5]})

df = df.dropna(axis=1)

print(df)

The output will be:

   C
0  1
1  2
2  3
3  NaN
4  5

As we can see, column B which contains null values has been removed.

In summary, the dropna() function enables developers to remove missing or null values from a DataFrame, thus making it easy to clean and organize the data for analysis.

Common parameters used with dropna() function.

The dropna() function in pandas has many parameters to allow for more advanced usage. In this section, we will discuss some of the most common parameters.

  • axis: This parameter is used to specify whether to remove rows (axis=0) or columns (axis=1). By default, axis=0.

  • subset: With this parameter, we can specify a list of columns on which to apply the dropna() function. Rows with missing values in the selected columns will be removed from the DataFrame.

  • thresh: This parameter is used to specify the minimum number of non-null values required in each row for it to be kept in the DataFrame.

  • inplace: This parameter is used to specify whether to modify the original DataFrame or to return a new DataFrame with the changes applied. By default, inplace=False.

  • how: This parameter is used to specify the type of drop operation to use. The available options are ‘any’ and ‘all’ which means to drop the row if any or all values are NaN respectively.

To use these parameters, we can pass them as arguments to the dropna() function. For example, consider the following df DataFrame with missing or null values.

import pandas as pd

df = pd.DataFrame({'A': [1, 2, 3, None, None], 'B': [None, None, 3, 4, None], 'C': [1, None, 3, 4, None]})

print(df)

The output will be:

     A    B    C
0  1.0  NaN  1.0
1  2.0  NaN  NaN
2  3.0  3.0  3.0
3  NaN  4.0  4.0
4  NaN  NaN  NaN

To remove rows with at least 2 null values, we can use the thresh parameter as follows;

df = df.dropna(thresh=2)

print(df)

The output will be:

     A    B    C
0  1.0  NaN  1.0
2  3.0  3.0  3.0
3  NaN  4.0  4.0

As we can see, rows with less than 2 non-null values have been removed. We can also remove columns with null values by specifying axis=1 as follows;

df = df.dropna(axis=1)

print(df)

The output will be:

Empty DataFrame
Columns: []
Index: [0, 1, 2, 3, 4]

As we can see, all columns with null values have been removed.

In summary, the dropna() function has several parameters which can be used to perform more advanced operations on a DataFrame with null values.

Summary

Dealing with missing values is a challenge every data analyst or scientist is likely to face when working with large datasets. However, the dropna() function in pandas has made it easier to remove such values and prepare the dataset for further analysis. Using common parameters such as axis, subset, thresh, inplace, and how, you can customize the operation to clean the dataset exactly as required. It is important to understand how to use dropna() effectively to maximize its power and flexibility. In conclusion, the dropna() function is an essential tool for data cleaning and analysis, and it is worth taking the time to understand how it works.

Share:
Subscribe to our newsletter

Stay up to date with our latest content - No spam!

Related Posts