Title: Reindexing pandas Series And Dataframes
Slug: pandas_dataframe_reindexing
Summary: Reindexing pandas Series And Dataframes
Date: 2016-05-01 12:00
Category: Python
Tags: Data Wrangling
Authors: Chris Albon
In [1]:
# Import Modules
import pandas as pd
import numpy as np
In [2]:
# Create a pandas series of the risk of fire in Southern Arizona
brushFireRisk = pd.Series([34, 23, 12, 23], index = ['Bisbee', 'Douglas', 'Sierra Vista', 'Tombstone'])
brushFireRisk
Out[2]:
In [3]:
# Reindex the series and create a new series variable
brushFireRiskReindexed = brushFireRisk.reindex(['Tombstone', 'Douglas', 'Bisbee', 'Sierra Vista', 'Barley', 'Tucson'])
brushFireRiskReindexed
Out[3]:
In [4]:
# Reindex the series and fill in any missing indexes as 0
brushFireRiskReindexed = brushFireRisk.reindex(['Tombstone', 'Douglas', 'Bisbee', 'Sierra Vista', 'Barley', 'Tucson'], fill_value = 0)
brushFireRiskReindexed
Out[4]:
In [5]:
# Create a dataframe
data = {'county': ['Cochice', 'Pima', 'Santa Cruz', 'Maricopa', 'Yuma'],
'year': [2012, 2012, 2013, 2014, 2014],
'reports': [4, 24, 31, 2, 3]}
df = pd.DataFrame(data)
df
Out[5]:
In [6]:
# Change the order (the index) of the rows
df.reindex([4, 3, 2, 1, 0])
Out[6]:
In [7]:
# Change the order (the index) of the columns
columnsTitles = ['year', 'reports', 'county']
df.reindex(columns=columnsTitles)
Out[7]: