w3resource

Pandas: Convert continuous values of a column in a given DataFrame to categorical

Pandas: DataFrame Exercise-70 with Solution

Write a Pandas program to convert continuous values of a column in a given DataFrame to categorical.

Input:
{ 'Name': ['Alberto Franco','Gino Mcneill','Ryan Parkes', 'Eesha Hinton', 'Syed Wharton'], 'Age': [18, 22, 40, 50, 80, 5] }
Output:
Age group:
0 kids
1 adult
2 elderly
3 adult
4 elderly
5 kids
Name: age_groups, dtype: category
Categories (3, object): [kids < adult < elderly]

Sample Solution :

Python Code :

import pandas as pd
df = pd.DataFrame({
    'name': ['Alberto Franco','Gino Mcneill','Ryan Parkes', 'Eesha Hinton', 'Syed Wharton', 'Kierra Gentry'],
      'age': [18, 22, 85, 50, 80, 5]
})
print("Original DataFrame:")
print(df)
print('\nAge group:')
df["age_groups"] = pd.cut(df["age"], bins = [0, 18, 65, 99], labels = ["kids", "adult", "elderly"])
print(df["age_groups"])

Sample Output:

Original DataFrame:
             name  age
0  Alberto Franco   18
1    Gino Mcneill   22
2     Ryan Parkes   85
3    Eesha Hinton   50
4    Syed Wharton   80
5   Kierra Gentry    5

Age group:
0       kids
1      adult
2    elderly
3      adult
4    elderly
5       kids
Name: age_groups, dtype: category
Categories (3, object): [kids < adult < elderly]

Python Code Editor:


Have another way to solve this solution? Contribute your code (and comments) through Disqus.

Previous: Write a Pandas program to merge datasets and check uniqueness.
Next: Write a Pandas program to display memory usage of a given DataFrame and every column of the DataFrame.

What is the difficulty level of this exercise?

Test your Python skills with w3resource's quiz



Python: Tips of the Day

Dictionary comprehension:

>>> m = {x: x ** 2 for x in range(5)}
>>> m
{0: 0, 1: 1, 2: 4, 3: 9, 4: 16}