How To Use map() In Pandas (Python)

Опубликовано: 11 Ноябрь 2020
на канале: DataDaft
18,534
560

↓ Code Available Below! ↓

This video shows how to map functions to columns of pandas data frames using .map(). The .map() function operates on pandas series and applies a function or dictionary mapping to each element of the series. Since the columns of data frames are series, it provides a convenient way of generating new columns by applying functions or correspondences elementwise on existing columns.

If you find this video useful, like, share and subscribe to support the channel!
► Subscribe: https://www.youtube.com/c/DataDaft?su...


Code used in this Python Code Clip:

import pandas as pd

data = pd.DataFrame({"power_level": [12000, 16000, 4000, 1500, 3000,
2000, 1600, 2000],
"uniform color": ["orange", "blue", "black", "orange",
"purple", "green", "orange", "orange"],
"species": ["saiyan","saiyan","saiyan","half saiyan",
"namak","human","human","human"]},
index = ["Goku","Vegeta", "Nappa","Gohan",
"Piccolo","Tien","Yamcha", "Krillin"])

data

Use .map() to apply a function to a pandas Series
Data Frame columns are Series

def my_function(x):
if x > 10000:
return("high")
if x > 2000:
return("med")
return ("low")


data["power_level"].map(my_function)

To map Series values based on key: value correspondence
Pass a mapping dictionary to .map()

correspondence = {"saiyan": "alien",
"namak":"alien",
"human":"earthling",
"half saiyan": "earthling"}

data["species"].map(correspondence)

Note: YouTube does not allow greater than or less than symbols in the text description, so the code above will not be exactly the same as the code shown in the video! I will use Unicode large < and > symbols in place of the standard sized ones. .


⭐ Kite is a free AI-powered coding assistant that integrates with popular editors and IDEs to give you smart code completions and docs while you’re typing. It is a cool application of machine learning that can also help you code faster! Check it out here: https://www.kite.com/get-kite/?utm_me...