NaN (Not a Number) is a special floating-point value used to represent invalid or unrepresentable values. In Python, NaN values can cause a lot of issues in data analysis and can often go unnoticed. In this article, we will look at 5 methods to check for NaN values in Python.
What is a NaN value?
NaN is a special floating-point value used to represent invalid or unrepresentable values. NaN values can arise due to various reasons, such as division by zero, square root of negative numbers, and other arithmetic operations that result in undefined or infinite values. In Python, NaN values are represented by the numpy.nan
object.
Method 1: Using the isnull() function
The isnull()
function is used to check for missing or NaN values in a DataFrame or Series. This function returns a Boolean array, where True
indicates a missing or NaN value and False
indicates a valid value.
import pandas as pd
df = pd.DataFrame({'A': [1, 2, np.nan, 4], 'B': [5, np.nan, 7, 8]})
print(df.isnull())
Output:
A B
0 False False
1 False True
2 True False
3 False False
Method 2: Using the isna() function
The isna()
function is an alias for the isnull()
function and is used to check for missing or NaN values in a DataFrame or Series.
import pandas as pd
df = pd.DataFrame({'A': [1, 2, np.nan, 4], 'B': [5, np.nan, 7, 8]})
print(df.isna())
Output:
A B
0 False False
1 False True
2 True False
3 False False
Method 3: Using the notnull() function
The notnull()
function is used to check for valid values in a DataFrame or Series. This function returns a Boolean array, where True
indicates a valid value and False
indicates a missing or NaN value.
import pandas as pd
df = pd.DataFrame({'A': [1, 2, np.nan, 4], 'B': [5, np.nan, 7, 8]})
print(df.notnull())
Output:
code A B
0 True True
1 True False
2 False True
3 True True
Method 4: Using the isnan() function
The isnan()
function is used to check if a value is NaN. This function returns a Boolean value, where True
indicates a NaN value and False
indicates a valid value.
import numpy as np
print(np.isnan(np.nan))
Output:
True
Method 5: Using the any() function
The any()
function is used to check if any of the values in a DataFrame or Series are missing or NaN. This function returns a Boolean value, where True
indicates the presence of
missing or NaN values and False
indicates the absence of missing or NaN values.
import pandas as pd
df = pd.DataFrame({'A': [1, 2, np.nan, 4], 'B': [5, np.nan, 7, 8]})
print(df.isnull().any())
Output:
A True
B True
dtype: bool
Conclusion
In this article, we looked at 5 methods to check for NaN values in Python. We learned how to use the isnull()
, isna()
, notnull()
, isnan()
, and any()
functions to check for missing or NaN values in a DataFrame or Series. By using these methods, we can ensure that our data analysis is accurate and free from issues caused by NaN values.
Leave a Reply