我有以下数据框形状:
date, close
exchange, symbol
CME ES 2015-02-25 123
YM 2015-02-25 345
NQ 2015-02-25 456
ES 2015-02-26 875
YM 2015-02-26 742
NQ 2015-02-26 235
目前它使用多索引(即:交换+符号)。我需要更改此数据框的形状,以便索引是日期,列是'close',列在exchange + symbol下面。结果基本上应该是这样的:
close
(exchange, symbol) (CME, ES) (CME, YM) (CME NQ)
date
2015-02-25 123 345 456
2015-02-26 875 742 235
我尝试过pivot / unstack / stack,这确实是完成此操作的正确方法,但是我无法获得所需的形状。
答案 0 :(得分:0)
这对我有用。基本上我为你设置了一个类似的数据框....我的数据框在这里:
symbol date close
ES 25/02/2015 123
YM 25/02/2015 456
NQ 25/02/2015 789
ES 26/02/2015 123
YM 26/03/2015 456
NQ 26/03/2015 789
df = pd.DataFrame.from_csv(path, index_col = None)
print df.pivot(index = 'date', columns = 'symbol', values = 'close')
输出:
symbol ES NQ YM
date
25/02/2015 123 789 456
26/02/2015 123 789 456
希望这有帮助吗?
答案 1 :(得分:-1)
要将“日期”列作为索引,您可以执行以下操作:
df.set_index('date', inplace = True)
之后,其他列将自动组织起来。