Skip to main content
TopMiniSite

Back to all posts

How to Remove Empty String In Pandas Dataframe?

Published on
4 min read
How to Remove Empty String In Pandas Dataframe? image

Best Tools to Clean Dataframes to Buy in February 2026

+
ONE MORE?

To remove empty strings in a pandas DataFrame, you can use the replace() method in combination with the np.nan function from the NumPy library. First, import the NumPy library by using import numpy as np. Then, you can replace empty strings with np.nan by applying the following code snippet: df.replace('', np.nan, inplace=True). This will replace all empty strings in the DataFrame named df with NaN values.

How to remove entire columns if they only contain empty strings in pandas dataframe?

You can remove entire columns from a pandas dataframe that only contain empty strings by using the following code:

import pandas as pd

Create a sample dataframe

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

Remove columns that only contain empty strings

df = df.loc[:, (df != '').any(axis=0)]

print(df)

This code will remove columns A and C from the dataframe because they only contain empty strings. The resulting dataframe will only contain columns with at least one non-empty string.

How to remove all types of missing values, including empty strings, in pandas dataframe?

To remove all types of missing values, including empty strings, in a pandas dataframe, you can use the dropna() method.

import pandas as pd

Create a sample dataframe with missing values

data = {'A': [1, 2, None, 4, ''], 'B': ['foo', None, 'bar', '', 'baz']} df = pd.DataFrame(data)

Remove all missing values, including empty strings

df_cleaned = df.replace('', pd.NA).dropna()

print(df_cleaned)

In the above code, we first replace empty strings with pd.NA, which represents a missing value in pandas. Then, we use the dropna() method to remove rows that contain missing values. This will remove rows where any value is None or empty string.

After running this code, you will get a new dataframe df_cleaned without any missing values, including empty strings.

How to filter out rows with empty string in pandas dataframe?

You can use the replace method to replace empty strings with NaN values and then use the dropna method to filter out rows with NaN values. Here is an example:

import pandas as pd

create a sample DataFrame with empty strings

data = {'A': ['a', 'b', 'c', ''], 'B': [1, 2, 3, 4]} df = pd.DataFrame(data)

replace empty strings with NaN values

df.replace('', pd.NA, inplace=True)

drop rows with NaN values

df_filtered = df.dropna()

print(df_filtered)

This will output:

A B 0 a 1 1 b 2 2 c 3

Now, the DataFrame df_filtered contains only rows without empty strings.

How to identify empty string in pandas dataframe?

You can identify empty strings in a pandas dataframe by using the eq method along with the str.strip() method. Here's an example:

import pandas as pd

Create a sample dataframe

df = pd.DataFrame({'A': ['foo', 'bar', ' ', 'baz', '']})

Identify empty strings in column 'A'

empty_strings = df['A'].str.strip().eq('').values

Print the rows with empty strings

print(df[empty_strings])

This will print the rows in the dataframe where column 'A' contains an empty string.

How to remove empty strings without modifying the original dataframe in pandas?

You can use the df.replace() method to replace empty strings with NaN values, without modifying the original dataframe. Here is an example code snippet to do this:

import pandas as pd

Create a sample dataframe with empty strings

data = {'col1': ['a', '', 'b', 'c', ''], 'col2': ['', 'd', 'e', '', 'f']}

df = pd.DataFrame(data)

Replace empty strings with NaN values

df_cleaned = df.replace('', pd.NA, inplace=False)

Print the cleaned dataframe

print(df_cleaned)

This will create a new dataframe df_cleaned with empty strings replaced by NaN values, while leaving the original df unchanged.

How to remove empty string from specific column in pandas dataframe?

You can use the following code to remove empty strings from a specific column in a pandas DataFrame:

import pandas as pd

Create a sample DataFrame

data = {'col1': ['1', '2', '', '4', '5'], 'col2': ['a', '', 'c', 'd', 'e']} df = pd.DataFrame(data)

Replace empty strings with NaN in a specific column

df['col1'].replace('', pd.np.nan, inplace=True)

Drop rows with NaN values in the specific column

df.dropna(subset=['col1'], inplace=True)

Print the resulting DataFrame

print(df)

This code will replace empty strings in the 'col1' column with NaN and then drop rows with NaN values in that column.