dataframe的pivot如何使用
时间: 2023-08-29 18:09:00 浏览: 46
`DataFrame.pivot()`方法可以用于将DataFrame重新排列成透视表的形式。它允许您根据某些列的值重新组织数据,并将这些列作为新的列索引、行索引和值。
以下是一个示例代码,演示了如何使用`pivot()`方法:
```python
import pandas as pd
# 创建一个示例DataFrame
data = {'Date': ['2021-01-01', '2021-01-02', '2021-01-01', '2021-01-02'],
'Category': ['A', 'B', 'A', 'B'],
'Value': [10, 20, 30, 40]}
df = pd.DataFrame(data)
# 打印原始DataFrame
print("原始DataFrame:")
print(df)
# 使用pivot()方法创建透视表
pivot_df = df.pivot(index='Date', columns='Category', values='Value')
# 打印透视表
print("透视表:")
print(pivot_df)
```
这将输出:
```
原始DataFrame:
Date Category Value
0 2021-01-01 A 10
1 2021-01-02 B 20
2 2021-01-01 A 30
3 2021-01-02 B 40
透视表:
Category A B
Date
2021-01-01 10 None
2021-01-02 None 20
```
在这个示例中,我们有一个包含日期、类别和值的原始DataFrame。我们使用`pivot()`方法将`Date`列作为行索引,`Category`列作为新的列索引,并将`Value`列作为值。这样,我们得到一个新的透视表DataFrame `pivot_df`。最后,我们打印透视表。
请注意,如果有多个相同索引值的组合,`pivot()`方法将默认将它们组合成一个单元格。在示例中,原始DataFrame中有两个相同的日期和类别组合(2021-01-01, A),所以在透视表中只显示了一个单元格,其中值为10。