To compute indexer and find the next index value if no exact match, use the index.get_indexer() method. Also set the method parameter to bfill.
At first, import the required libraries −
import pandas as pd
Creating Pandas index −
index = pd.Index([10, 20, 30, 40, 50, 60, 70])
Display the Pandas index −
print("Pandas Index...\n",index)
Compute indexer and mask using the "get_indexer". Find the next index value if no exact match using the "method" parameter. The value is set "bfill" −
print("\nGet the indexes...\n",index.get_indexer([30, 25, 58, 50, 55], method="bfill"))
Example
Following is the code −
import pandas as pd # Creating Pandas index index = pd.Index([10, 20, 30, 40, 50, 60, 70]) # Display the Pandas index print("Pandas Index...\n",index) # Return the number of elements in the Index print("\nNumber of elements in the index...\n",index.size) # Compute indexer and mask using the "get_indexer" # Find the next index value if no exact match using the "method" parameter. # The value is set "bfill" print("\nGet the indexes...\n",index.get_indexer([30, 25, 58, 50, 55], method="bfill"))
Output
This will produce the following output −
Pandas Index... Int64Index([10, 20, 30, 40, 50, 60, 70], dtype='int64') Number of elements in the index... 7 Get the indexes... [2 2 5 4 5]