Python ProgrammingPython Programming

Find n-smallest and n-largest values from DataFrame for a particular Column in Pandas

Locating the n-smallest and n-largest values:

import pandas as pd

df = pd.DataFrame([[10, 20, 30, 40], [7, 14, 21, 28], [55, 15, 8, 12],
                   [15, 14, 1, 8], [7, 1, 1, 8], [5, 4, 9, 2]],
                  columns=['Apple', 'Orange', 'Banana', 'Pear'],
                  index=['Basket1', 'Basket2', 'Basket3', 'Basket4',
                         'Basket5', 'Basket6'])

print("\n----------- nsmallest -----------\n")
print(df.nsmallest(2, ['Apple']))

print("\n----------- nlargest -----------\n")
print(df.nlargest(2, ['Apple']))


C:\pandas>python example.py
 
----------- nsmallest -----------
 
         Apple  Orange  Banana  Pear
Basket6      5       4       9     2
Basket2      7      14      21    28
 
----------- nlargest -----------
 
         Apple  Orange  Banana  Pear
Basket3     55      15       8    12
Basket4     15      14       1     8
 
C:\pandas>