dataframe.melt
时间: 2023-09-09 14:09:42 浏览: 180
Python pandas数据转化.docx
`dataframe.melt` 是 Pandas 库中的一个函数,用于将数据框从宽格式(wide format)转换为长格式(long format)。它将数据框中的列名作为标识变量(id_vars),将其他列的值作为观测变量(value_vars),并将它们展开成两个新的列:一个包含标识变量的值,另一个包含相应观测变量的值。
具体用法如下:
```python
melted_df = dataframe.melt(id_vars=[...], value_vars=[...], var_name='...', value_name='...')
```
参数解释:
- `id_vars`:要保持不变的列名(标识变量),可以是单个列名或列名列表。
- `value_vars`:要进行展开的列名(观测变量),可以是单个列名或列名列表。如果未指定,则默认使用除了标识变量之外的所有列。
- `var_name`:指定用于存储标识变量名称的新列的名称。
- `value_name`:指定用于存储观测变量值的新列的名称。
示例:
假设有以下数据框 `df`:
```
id A B C
0 1 a b c
1 2 d e f
2 3 g h i
```
使用 `melted_df = df.melt(id_vars='id', var_name='Variable', value_name='Value')` 将其转换成长格式后的结果如下:
```
id Variable Value
0 1 A a
1 2 A d
2 3 A g
3 1 B b
4 2 B e
5 3 B h
6 1 C c
7 2 C f
8 3 C i
```
这样,原始数据框的列名作为标识变量,对应的值作为观测变量,并展开成了长格式的数据框。
阅读全文