Pandas Example – Write a Pandas program to rename names of columns and specific labels of the Main Index of the MultiIndex dataframe

(Python Example for Beginners)

 

Write a Pandas program to rename names of columns and specific labels of the Main Index of the MultiIndex dataframe.

Sample Solution:

Python Code :


import pandas as pd 
import numpy as np

sales_arrays = [['sale1', 'sale1', 'sale2', 'sale2', 'sale3', 'sale3', 'sale4', 'sale4'],
          ['city1', 'city2', 'city1', 'city2', 'city1', 'city2', 'city1', 'city2']]

sales_tuples = list(zip(*sales_arrays))
sales_index = pd.MultiIndex.from_tuples(sales_tuples, names=['sale', 'city'])
print(sales_tuples)

print("nConstruct a Dataframe using the said MultiIndex levels: ")
df = pd.DataFrame(np.random.randn(8, 5), index=sales_index)
print(df)

print("nRename the columns name of the said dataframe")
df1 = df.rename(columns={0: "col1", 1: "col2", 2:"col3", 3:"col4", 4:"col5"})
print(df1)

print("nRename specific labels of the main index of the DataFrame")
df2 = df1.rename(index={"sale2": "S2", "city2": "C2"})
print(df2)

Sample Output:

[('sale1', 'city1'), ('sale1', 'city2'), ('sale2', 'city1'), ('sale2', 'city2'), ('sale3', 'city1'), ('sale3', 'city2'), ('sale4', 'city1'), ('sale4', 'city2')]

Construct a Dataframe using the said MultiIndex levels: 
                    0         1         2         3         4
sale  city                                                   
sale1 city1 -0.846342 -0.741958  1.776873 -0.526789  0.425722
      city2 -1.191729  2.871049  1.334246 -0.555390  0.678033
sale2 city1  1.215433 -0.305873 -0.197025 -1.145550  0.367179
      city2 -1.043111 -0.054862 -0.409382 -0.781236 -1.111498
sale3 city1  0.198136 -0.092846  0.211265 -0.338316 -0.006117
      city2  1.254932  0.660553 -0.343675 -1.488751  1.141144
sale4 city1  0.440996 -1.886134 -1.705170 -0.583568 -0.094108
      city2 -0.645809 -0.979893  0.589839 -0.440143  0.032115

Rename the columns name of the said dataframe
                 col1      col2      col3      col4      col5
sale  city                                                   
sale1 city1 -0.846342 -0.741958  1.776873 -0.526789  0.425722
      city2 -1.191729  2.871049  1.334246 -0.555390  0.678033
sale2 city1  1.215433 -0.305873 -0.197025 -1.145550  0.367179
      city2 -1.043111 -0.054862 -0.409382 -0.781236 -1.111498
sale3 city1  0.198136 -0.092846  0.211265 -0.338316 -0.006117
      city2  1.254932  0.660553 -0.343675 -1.488751  1.141144
sale4 city1  0.440996 -1.886134 -1.705170 -0.583568 -0.094108
      city2 -0.645809 -0.979893  0.589839 -0.440143  0.032115

Rename specific labels of the main index of the DataFrame
                 col1      col2      col3      col4      col5
sale  city                                                   
sale1 city1 -0.846342 -0.741958  1.776873 -0.526789  0.425722
      C2    -1.191729  2.871049  1.334246 -0.555390  0.678033
S2    city1  1.215433 -0.305873 -0.197025 -1.145550  0.367179
      C2    -1.043111 -0.054862 -0.409382 -0.781236 -1.111498
sale3 city1  0.198136 -0.092846  0.211265 -0.338316 -0.006117
      C2     1.254932  0.660553 -0.343675 -1.488751  1.141144
sale4 city1  0.440996 -1.886134 -1.705170 -0.583568 -0.094108
      C2    -0.645809 -0.979893  0.589839 -0.440143  0.032115

 

Pandas Example – Write a Pandas program to rename names of columns and specific labels of the Main Index of the MultiIndex dataframe

Sign up to get end-to-end “Learn By Coding” example.


Two Machine Learning Fields

There are two sides to machine learning:

  • Practical Machine Learning:This is about querying databases, cleaning data, writing scripts to transform data and gluing algorithm and libraries together and writing custom code to squeeze reliable answers from data to satisfy difficult and ill defined questions. It’s the mess of reality.
  • Theoretical Machine Learning: This is about math and abstraction and idealized scenarios and limits and beauty and informing what is possible. It is a whole lot neater and cleaner and removed from the mess of reality.
Disclaimer: The information and code presented within this recipe/tutorial is only for educational and coaching purposes for beginners and developers. Anyone can practice and apply the recipe/tutorial presented here, but the reader is taking full responsibility for his/her actions. The author (content curator) of this recipe (code / program) has made every effort to ensure the accuracy of the information was correct at time of publication. The author (content curator) does not assume and hereby disclaims any liability to any party for any loss, damage, or disruption caused by errors or omissions, whether such errors or omissions result from accident, negligence, or any other cause. The information presented here could also be found in public knowledge domains.