【发布时间】:2016-05-05 14:25:57
【问题描述】:
我有一个包含这些列的 pandas 数据框:
- itemid
- 15/01/2015 状态
- 15/01/2015 地点
- 15/02/2015 状态
- 15/02/2015 地点
- 等
这两件事我该怎么做?
- 创建多索引列,其中第一个索引是月份,第二个索引是我正在跟踪的指标(状态、位置)
- 堆叠列,使表格看起来像这样:
+--------+-----------+----------+--------+--+
| itemid | mymonth | location | status | |
+--------+-----------+----------+--------+--+
| A | 15/1/2015 | North | Good | |
| A | 15/2/2015 | South | Bad | |
+--------+-----------+----------+--------+--+
从如下所示的输入开始:
+--------+-------------------+---------------------+-------------------+---------------------+
| itemid | 15/01/2015 status | 15/01/2015 location | 15/02/2015 status | 15/02/2015 location |
+--------+-------------------+---------------------+-------------------+---------------------+
| A | Good | North | Bad | South |
+--------+-------------------+---------------------+-------------------+---------------------+
哪些(输入)可以通过以下方式重新创建:
import pandas as pd
df=pd.DataFrame()
df['itemid']=['A']
df['15/01/2015 status'] = ['Good']
df['15/01/2015 location'] = ['North']
df['15/02/2015 status'] = ['Bad']
df['15/02/2015 location'] = ['South']
我一直在考虑如何使用melt,但我不太确定它是否可以在这种情况下工作。
【问题讨论】:
-
您可以添加可以创建所需输出的输入 DataFrame 示例吗?
标签: python pandas dataframe reshape