在Python中如何从Excel重新组织不一致的列?

时间:2017-07-05 15:16:25

标签: python excel pandas xlrd

我有一堆报告,都包含相同的信息,但列的顺序和标题不一致,所以当我运行函数来解析信息时,我没有得到我想要的东西。

如何使用python以一致的方式组织列以便以后使用?

目前列似乎;

['Comment', 'Rec Date', 'Receipt Number', 'Rec Amt', 'Receipt Method', 'Status']
['Comment', 'State', 'Rec No', 'Rec Date', 'Rec Amt', 'Status']
['Receipt Number', 'Rec Date', 'Rec Amt', 'Comment', 'State', 'Status']
['Comment', 'Receipt Number', 'Rec Date', 'Rec Amt', 'State', 'Rec Method']
['Comment', 'Receipt Number', 'Rec Date', 'Rec Amt', 'Receipt Method', 'State']
['Comment', 'Receipt Number', 'Rec Date', 'Rec Amt', 'State', 'Rec Method']

我希望所有这些类别都包含在列中。 (不具有特定列值的点将获得一些占位符或空值。)

1 个答案:

答案 0 :(得分:3)

DataFrame的第一个read_excel

df = pd.read_excel('file.xlsx') 

我认为您需要按dict排列rename列,然后按sort_index排序:

d = {'Rec No':'Receipt Number', 'Rec Method':'Receipt Method',...}
df = df.rename(columns=d).sort_index(axis=1)