我有一个excel数据透视表,数据如下:
Code Region Detail Oct'17 Sep'17 Aug'17
AXISCGF zone 1 IND3D01024 -82,000 0 900,000
AXISDEF zone 5 INP467B029 85,000 182,000 0
AXISEAF zone 4 INZ514ELY4 -13,500 0 5,00,000
AXISEQF zone 2 INQ916D14E 0 -500,000 25,400
我想要的结果是:
Code Region Detail Month Change
AXISCGF zone 1 IND3D01024 Oct'17 -82,000
AXISDEF zone 5 INP467B029 Oct'17 85,000
..
AXISCGF zone 1 IND3D01024 Sep'17 0
AXISDEF zone 5 INP467B029 Sep'17 182,000
我希望前三列保持原样,然后附加从第四列开始的所有列。我可以在第4列循环到最后。我的代码:
import pandas
df = pandas.read_excel('Data_2017.xlsx', sheet_name='Sales')
for data_column in df.columns[3:10]:
df_new = df.filter(['Code','Region','Detail',data_column])
#print df_new.head()
df_new.to_csv('_TEST_Output.csv',mode='a')
输出:
Code Region Detail Oct'17
0 AXISCGF zone 1 IND3D01024 -82,000
1 AXISDEF zone 5 INP467B029 85,000
..
3501 AXISESF zone 3 INO0201062 0
Code Region Detail Sep'17
0 AXISDEF zone 5 INP467B029 182,000
如何使用pandas获得所需的输出?你知道吗
使用^{} :
另一个解决方案是^{} ,但列中的值顺序不同:
相关问题 更多 >
编程相关推荐