pandas 行列互换
时间: 2024-11-04 19:07:56 浏览: 22
在Pandas库中,如果你想要交换DataFrame的行和列,可以使用`swaplevel()`函数或者简单的`T`属性。这两个方法都是为了改变DataFrame的索引层级结构。
1. `swaplevel(level0, level1=None)`方法:
- `level0`和`level1`是你想要交换的索引层次编号,如果只有一个级别需要交换,你可以省略第二个参数。
- 这个方法通常用于MultiIndex(多级索引),它会按照指定的顺序交换两个级别的位置。
```python
df = pd.DataFrame({'A': ['foo', 'bar', 'foo', 'bar'],
'B': [1, 2, 3, 4],
'C': [10, 20, 30, 40]},
index=[('a', 0), ('a', 1), ('b', 0), ('b', 1)])
swapped_df = df.swaplevel(0, 1)
print(swapped_df)
```
2. 使用`.T`属性:
- 对于简单的单层索引,可以直接使用这个属性交换行和列。
```python
df = pd.DataFrame({
'Name': ['Alice', 'Bob', 'Charlie'],
'Age': [25, 30, 35],
'City': ['New York', 'Paris', 'London']
})
transposed_df = df.T
print(transposed_df)
```
阅读全文