Pandas Example – Write a Pandas program to convert 1st and 3rd levels in the index into columns from a multiple level of index frame of a given dataframe

(Python Example for Beginners)

 

Write a Pandas program to convert 1st and 3rd levels in the index into columns from a multiple level of index frame of a given dataframe.

Test Data:

0        s001     V  Alberto Franco     15/05/2002      35  street1   t1
1        s002     V    Gino Mcneill     17/05/2002      32  street2   t2
2        s003    VI     Ryan Parkes     16/02/1999      33  street3   t3
3        s001    VI    Eesha Hinton     25/09/1998      30  street1   t4
4        s002     V    Gino Mcneill     11/05/2002      31  street2   t5
5        s004    VI    David Parkes     15/09/1997      32  street4   t6

 

Sample Solution:

Python Code :


import pandas as pd

df = pd.DataFrame({
    'school_code': ['s001','s002','s003','s001','s002','s004'],
    'class': ['V', 'V', 'VI', 'VI', 'V', 'VI'],
    'name': ['Alberto Franco','Gino Mcneill','Ryan Parkes', 'Eesha Hinton', 'Gino Mcneill', 'David Parkes'],
    'date_of_birth': ['15/05/2002','17/05/2002','16/02/1999','25/09/1998','11/05/2002','15/09/1997'],
    'weight': [35, 32, 33, 30, 31, 32],
    't_id': ['t1', 't2', 't3', 't4', 't5', 't6']})

print("Original DataFrame:")
print(df)

print("nMultiIndex using columns 't_id', ‘school_code’ and 'class':")
df1 = df.set_index(['t_id', 'school_code', 'class'])
print(df1)

print("nConvert 1st and 3rd levels in the index frame into columns:")
df2 = df1.reset_index(level=['t_id', 'class'])
print(df2)

Sample Output:

Original DataFrame:
  school_code class            name date_of_birth  weight t_id
0        s001     V  Alberto Franco    15/05/2002      35   t1
1        s002     V    Gino Mcneill    17/05/2002      32   t2
2        s003    VI     Ryan Parkes    16/02/1999      33   t3
3        s001    VI    Eesha Hinton    25/09/1998      30   t4
4        s002     V    Gino Mcneill    11/05/2002      31   t5
5        s004    VI    David Parkes    15/09/1997      32   t6

MultiIndex using columns 't_id', ‘school_code’ and 'class':
                                  name date_of_birth  weight
t_id school_code class                                      
t1   s001        V      Alberto Franco    15/05/2002      35
t2   s002        V        Gino Mcneill    17/05/2002      32
t3   s003        VI        Ryan Parkes    16/02/1999      33
t4   s001        VI       Eesha Hinton    25/09/1998      30
t5   s002        V        Gino Mcneill    11/05/2002      31
t6   s004        VI       David Parkes    15/09/1997      32

Convert 1st and 3rd levels in the index frame into columns:
            t_id class            name date_of_birth  weight
school_code                                                 
s001          t1     V  Alberto Franco    15/05/2002      35
s002          t2     V    Gino Mcneill    17/05/2002      32
s003          t3    VI     Ryan Parkes    16/02/1999      33
s001          t4    VI    Eesha Hinton    25/09/1998      30
s002          t5     V    Gino Mcneill    11/05/2002      31
s004          t6    VI    David Parkes    15/09/1997      32

 

Pandas Example – Write a Pandas program to convert 1st and 3rd levels in the index into columns from a multiple level of index frame of a given 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.