1
我有下面表在Excel(XLS)枢轴表:取消枢转/堆叠与Python熊猫
Quarter Q1 Q1 Q1
Year 2013 2014 2015
Company A A A
PA 500 300 963
NY 200 150 1500
我想创建是下表通过使用Python熊猫:
Quarter Year State Company Amount
Q1 2013 PA A 500
Q1 2014 PA A 300
Q1 2015 PA A 963
Q1 2013 NY A 200
Q1 2014 NY A 150
Q1 2015 NY A 1500
编辑: 我已经每@jezrael建议用下面的代码:
import pandas as p
df = p.read_excel('test.xls')
df = df.set_index('0')
df = df.T.stack().reset_index(name='idx')
df.columns = ['Quarter', 'Year', 'Company', 'State', 'Amount']
df = df[['Quarter', 'Year', 'State', 'Company', 'Amount']]
df = df.sort_values(by=['State'], ascending=['False']).reset_index(drop=True)
print(df)
我一直得到下面的错误:
File "pandas\hashtable.pyx", line 676, in pandas.hashtable.PyObjectHashTable.get_item (pandas\hashtable.c:12216)
KeyError: '0'
我也试图与0,同样的错误与KeyError: 0
,而不是'df.set_index (0)'你需要'df.set_index('0')'至少在python3.4和pandas 0.17.0 –
你好,我已经尝试了上面的代码,既有0也有'0',因为我有Python 3.5和运行这两个代码后,我一直得到KeyError:0和KeyError:'0'。有什么建议?再次感谢你。 –
什么是输入数据帧的列名称?您可以检查它:'print df.columns' – jezrael