What is DataFrame.first_valid_index in pandas?
Overview
The first_valid_index method is used to return the index for the first non-NA or None value. The method returns None for the following conditions:
- If all elements are non-NA or
None. - If the DataFrame is empty.
Note: Click here to learn more about the pandas library.
Syntax
DataFrame.first_valid_index()
Parameter
The method has no parameters.
Example
import pandas as pdimport numpy as npdef index(dataframe):print("DataFrame is:")print(dataframe)print("Index of the first non-NA/null value is - ", dataframe.first_valid_index())df = pd.DataFrame([[np.nan, np.nan, np.nan],[np.nan, 100,3],[1, 2, 3],[np.nan,-7,np.nan],[-9, -8, -7],[10, 8, 12]],columns=list('XYZ'))df1 = pd.DataFrame([[np.nan, np.nan, np.nan],[np.nan, np.nan, np.nan],[np.nan, np.nan, np.nan],[np.nan,-3,np.nan],[10, 8, 12]],columns=list('XYZ'))df2 = pd.DataFrame([[np.nan, np.nan, np.nan],[np.nan, np.nan, np.nan],[np.nan, np.nan, np.nan]],columns=list('XYZ'))index(df)index(df1)index(df2)
Explanation
- Lines 1-2: We import the
pandasandnumpymodules. - Lines 4–7: We define a function called
indexthat accepts a DataFrame, prints it, and finds the first non-NA/null value index using thefirst_valid_indexmethod. - Lines 10–12: We define three different DataFrames with different patterns.
- Lines 14–16: We call the
indexmethod with different DataFrames.
Output
- The output for
dfindicates that the 1st row has a non-NA/non-null value in its columns. - The output for
df1indicates that the 3rd row has a non-NA/non-null value in its columns. - The output for
df2indicates that none of the rows have a non-null/non-NA value.