pandas map
时间: 2023-10-17 08:35:09 浏览: 148
Pandas `map()`函数是DataFrame和Series的一种方法,用于对其中的元素进行映射操作。它接受一个字典、Series或者函数作为参数,并将其应用到每个元素上,返回一个新的Series或DataFrame。
当传入一个字典时,`map()`函数会根据字典中的键值对将原始数据中的值映射为对应的新值。例如:
```python
import pandas as pd
data = {'A': ['apple', 'banana', 'orange'], 'B': [1, 2, 3]}
df = pd.DataFrame(data)
fruit_dict = {'apple': 'fruit', 'banana': 'fruit', 'orange': 'fruit'}
df['A'] = df['A'].map(fruit_dict)
```
这样,原始数据中的水果名称将会被映射为对应的类别。
当传入一个Series时,`map()`函数会根据Series的索引进行元素映射。例如:
```python
import pandas as pd
data = {'A': ['apple', 'banana', 'orange'], 'B': ['red', 'yellow', 'orange']}
df = pd.DataFrame(data)
color_series = pd.Series(['green', 'blue', 'purple'], index=['apple', 'banana', 'orange'])
df['C'] = df['A'].map(color_series)
```
这样,原始数据中水果名称对应的颜色将会被映射到新的一列中。
当传入一个函数时,`map()`函数会将每个元素作为函数的输入,并返回函数的输出值。例如:
```python
import pandas as pd
data = {'A': [1, 2, 3], 'B': [4, 5, 6]}
df = pd.DataFrame(data)
def add_one(x):
return x + 1
df['A'] = df['A'].map(add_one)
```
这样,原始数据中的每个元素都会加一。
总之,`map()`函数可用于DataFrame和Series中对元素进行映射操作,提供了灵活的方式来修改数据。
阅读全文