Select row with maximum and minimum value in Pandas dataframe

06 Jan, 2019
Let’s see how can we select row with maximum and minimum value in Pandas dataframe with help of different examples.
Consider this dataset.
# importing pandas and numpyimport pandas as pdimport numpy as np  # data of 2018 drivers world championshipdict1 ={'Driver':['Hamilton', 'Vettel', 'Raikkonen',                  'Verstappen', 'Bottas', 'Ricciardo',                  'Hulkenberg', 'Perez', 'Magnussen',                   'Sainz', 'Alonso', 'Ocon', 'Leclerc',                  'Grosjean', 'Gasly', 'Vandoorne',                  'Ericsson', 'Stroll', 'Hartley', 'Sirotkin'],                            'Points':[408, 320, 251, 249, 247, 170, 69, 62, 56,                   53, 50, 49, 39, 37, 29, 12, 9, 6, 4, 1],                             'Age':[33, 31, 39, 21, 29, 29, 31, 28, 26, 24, 37,                      22, 21, 32, 22, 26, 28, 20, 29, 23]}                        # creating dataframe using DataFrame constructordf = pd.DataFrame(dict1)print(df.head(10))
Output:
Code #1: Shows max on Driver, Points, Age columns.
# importing pandas and numpyimport pandas as pdimport numpy as np  # data of 2018 drivers world championshipdict1 ={'Driver':['Hamilton', 'Vettel', 'Raikkonen',                  'Verstappen', 'Bottas', 'Ricciardo',                  'Hulkenberg', 'Perez', 'Magnussen',                   'Sainz', 'Alonso', 'Ocon', 'Leclerc',                  'Grosjean', 'Gasly', 'Vandoorne',                  'Ericsson', 'Stroll', 'Hartley', 'Sirotkin'],                            'Points':[408, 320, 251, 249, 247, 170, 69, 62, 56,                   53, 50, 49, 39, 37, 29, 12, 9, 6, 4, 1],                             'Age':[33, 31, 39, 21, 29, 29, 31, 28, 26, 24, 37,                      22, 21, 32, 22, 26, 28, 20, 29, 23]}                        # creating dataframe using DataFrame constructordf = pd.DataFrame(dict1)  # the result shows max on# Driver, Points, Age columns.print(df.max())
Output: Code #2: Who scored max points
# importing pandas and numpyimport pandas as pdimport numpy as np  # data of 2018 drivers world championshipdict1 ={'Driver':['Hamilton', 'Vettel', 'Raikkonen',                  'Verstappen', 'Bottas', 'Ricciardo',                  'Hulkenberg', 'Perez', 'Magnussen',                   'Sainz', 'Alonso', 'Ocon', 'Leclerc',                  'Grosjean', 'Gasly', 'Vandoorne',                  'Ericsson', 'Stroll', 'Hartley', 'Sirotkin'],                            'Points':[408, 320, 251, 249, 247, 170, 69, 62, 56,                   53, 50, 49, 39, 37, 29, 12, 9, 6, 4, 1],                             'Age':[33, 31, 39, 21, 29, 29, 31, 28, 26, 24, 37,                      22, 21, 32, 22, 26, 28, 20, 29, 23]}                        # creating dataframe using DataFrame constructordf = pd.DataFrame(dict1)  # Who scored more points ?print(df[df.Points == df.Points.max()])
Output: 
Code #3: What is the maximum age
# importing pandas and numpyimport pandas as pdimport numpy as np  # data of 2018 drivers world championshipdict1 ={'Driver':['Hamilton', 'Vettel', 'Raikkonen',                  'Verstappen', 'Bottas', 'Ricciardo',                  'Hulkenberg', 'Perez', 'Magnussen',                   'Sainz', 'Alonso', 'Ocon', 'Leclerc',                  'Grosjean', 'Gasly', 'Vandoorne',                  'Ericsson', 'Stroll', 'Hartley', 'Sirotkin'],                            'Points':[408, 320, 251, 249, 247, 170, 69, 62, 56,                   53, 50, 49, 39, 37, 29, 12, 9, 6, 4, 1],                             'Age':[33, 31, 39, 21, 29, 29, 31, 28, 26, 24, 37,                      22, 21, 32, 22, 26, 28, 20, 29, 23]}                        # creating dataframe using DataFrame constructordf = pd.DataFrame(dict1)  # what is the maximum age ?print(df.Age.max())
Output:
Code #4: Which row has maximum age in the dataframe | who is the oldest driver ?
# importing pandas and numpyimport pandas as pdimport numpy as np  # data of 2018 drivers world championshipdict1 ={'Driver':['Hamilton', 'Vettel', 'Raikkonen',                  'Verstappen', 'Bottas', 'Ricciardo',                  'Hulkenberg', 'Perez', 'Magnussen',                   'Sainz', 'Alonso', 'Ocon', 'Leclerc',                  'Grosjean', 'Gasly', 'Vandoorne',                  'Ericsson', 'Stroll', 'Hartley', 'Sirotkin'],                            'Points':[408, 320, 251, 249, 247, 170, 69, 62, 56,                   53, 50, 49, 39, 37, 29, 12, 9, 6, 4, 1],                             'Age':[33, 31, 39, 21, 29, 29, 31, 28, 26, 24, 37,                      22, 21, 32, 22, 26, 28, 20, 29, 23]}                        # creating dataframe using DataFrame constructordf = pd.DataFrame(dict1)  # Which row has maximum age |# who is the oldest driver ?print(df[df.Age == df.Age.max()])
Output:
Code #1: Shows min on Driver, Points, Age columns.
# importing pandas and numpyimport pandas as pdimport numpy as np  # data of 2018 drivers world championshipdict1 ={'Driver':['Hamilton', 'Vettel', 'Raikkonen',                  'Verstappen', 'Bottas', 'Ricciardo',                  'Hulkenberg', 'Perez', 'Magnussen',                   'Sainz', 'Alonso', 'Ocon', 'Leclerc',                  'Grosjean', 'Gasly', 'Vandoorne',                  'Ericsson', 'Stroll', 'Hartley', 'Sirotkin'],                            'Points':[408, 320, 251, 249, 247, 170, 69, 62, 56,                   53, 50, 49, 39, 37, 29, 12, 9, 6, 4, 1],                             'Age':[33, 31, 39, 21, 29, 29, 31, 28, 26, 24, 37,                      22, 21, 32, 22, 26, 28, 20, 29, 23]}                        # creating dataframe using DataFrame constructordf = pd.DataFrame(dict1)  # the result shows min on # Driver, Points, Age columns.print(df.min())
Output: 
Code #2: Who scored less points
# importing pandas and numpyimport pandas as pdimport numpy as np  # data of 2018 drivers world championshipdict1 ={'Driver':['Hamilton', 'Vettel', 'Raikkonen',                  'Verstappen', 'Bottas', 'Ricciardo',                  'Hulkenberg', 'Perez', 'Magnussen',                   'Sainz', 'Alonso', 'Ocon', 'Leclerc',                  'Grosjean', 'Gasly', 'Vandoorne',                  'Ericsson', 'Stroll', 'Hartley', 'Sirotkin'],                            'Points':[408, 320, 251, 249, 247, 170, 69, 62, 56,                   53, 50, 49, 39, 37, 29, 12, 9, 6, 4, 1],                             'Age':[33, 31, 39, 21, 29, 29, 31, 28, 26, 24, 37,                      22, 21, 32, 22, 26, 28, 20, 29, 23]}                        # creating dataframe using DataFrame constructordf = pd.DataFrame(dict1)  # Who scored less points ?print(df[df.Points == df.Points.min()])
Output: Code #3: Which row has minimum age in the dataframe | who is the youngest driver
# importing pandas and numpyimport pandas as pdimport numpy as np  # data of 2018 drivers world championshipdict1 ={'Driver':['Hamilton', 'Vettel', 'Raikkonen',                  'Verstappen', 'Bottas', 'Ricciardo',                  'Hulkenberg', 'Perez', 'Magnussen',                   'Sainz', 'Alonso', 'Ocon', 'Leclerc',                  'Grosjean', 'Gasly', 'Vandoorne',                  'Ericsson', 'Stroll', 'Hartley', 'Sirotkin'],                            'Points':[408, 320, 251, 249, 247, 170, 69, 62, 56,                   53, 50, 49, 39, 37, 29, 12, 9, 6, 4, 1],                             'Age':[33, 31, 39, 21, 29, 29, 31, 28, 26, 24, 37,                      22, 21, 32, 22, 26, 28, 20, 29, 23]}                        # creating dataframe using DataFrame constructordf = pd.DataFrame(dict1)  # Which row has maximum age | # who is the youngest driver ?print(df[df.Age == df.Age.min()])
Output:
pandas-dataframe-program
Picked
Python pandas-dataFrame
Python-pandas
Technical Scripter 2018
Python
Technical Scripter
Writing code in comment?
Please use ide.geeksforgeeks.org,
generate link and share the link here.
Python Dictionary
Different ways to create Pandas Dataframe
Enumerate() in Python
Python String | replace()
How to Install PIP on Windows ?
*args and **kwargs in Python
Python Classes and Objects
Iterate over a list in Python
Python OOPs Concepts
Convert integer to string in Python