pandas unstack
时间: 2023-11-20 10:57:11 浏览: 226
pandas中的unstack()方法用于将堆叠的数据透视为未堆叠的形式。它的语法如下:
```python
DataFrame.unstack(level=-1, fill_value=None)
```
其中,level参数指定要取消堆叠的级别,默认为最后一级。fill_value参数指定用于替换NaN值的值,默认为None。
以下是一个示例,展示如何使用unstack()方法:
```python
import pandas as pd
# 创建一个DataFrame
data = {'name': ['Alice', 'Bob', 'Charlie', 'David'],
'subject': ['Math', 'English', 'Math', 'English'],
'score': [85, 90, 82, 87]}
df = pd.DataFrame(data)
# 使用pivot_table()方法进行透视
pivot_table = df.pivot_table(index='name', columns='subject', values='score')
# 使用unstack()方法取消堆叠
unstacked = pivot_table.unstack()
print(unstacked)
```
输出结果为:
```
subject
English Alice 90.0
Bob 87.0
Charlie NaN
David 87.0
Math Alice 85.0
Bob NaN
Charlie 82.0
David NaN
dtype: float64
```
阅读全文