pandas库csv纵向堆叠
时间: 2024-07-03 11:01:12 浏览: 152
Pandas库中的`pd.melt()`函数可以帮助你实现CSV数据的纵向堆叠,也称为数据透视或重塑。这个功能常用于将宽格式的数据(每个观测值有一列或多列)转换为长格式(一个观测值对应一列,列名包含原始列的标识和值)。下面是`melt()`函数的一般用法:
```python
import pandas as pd
# 假设你有一个DataFrame df,例如:
df = pd.DataFrame({
'ID': ['A', 'B', 'A', 'B'],
'Category': ['Cat1', 'Cat2', 'Cat1', 'Cat2'],
'Value1': [1, 2, 3, 4],
'Value2': [5, 6, 7, 8]
})
# 纵向堆叠(melt)操作:
melted_df = pd.melt(df, id_vars='ID', value_vars=['Value1', 'Value2'], var_name='Variable', value_name='Value')
# 输出结果:
```
```
ID Variable Value
0 A Value1 1
1 B Value1 2
2 A Value2 3
3 B Value2 4
```
在上述代码中:
- `id_vars`参数指定了保留不变的列(在这个例子中是'ID'),
- `value_vars`参数指定要堆叠的列('Value1' 和 'Value2'),
- `var_name`是新列'Variable'的名称,包含了原来的列名,
- `value_name`是新列'Value'的名称,包含了堆叠后的值。
阅读全文