python-3.x – Python Pandas,两行作为列标题?

我已经看到了如何使用双索引,但我还没有看到如何使用双行列标题.这可能吗?

例如,第1行是重复的日期系列:2016年,2016年,2015年,2015年

第2行是重复的数据系列.美元销售,单位销售,美元销售,单位销售.

因此,每个“Dollar Sales”标题实际上与上面一行中的日期相关联.

后续行是具有数据的单个项目.

有没有办法做一个groupby或某种方式,我可以有两个列标题?最终,我希望将美元销售按日期排列,以便我可以制作一个漂亮的图表.不幸的是,在下一个“Dollar Sales”值之前有多列. (不仅仅是一个“单位销售”专栏).此外,如果我删除上面的日期行,则“Dollar Sales”与每个日期之间没有关联.

最佳答案 如果使用pandas.read_csv()或pandas.read_table(),则可以提供header参数的索引列表,以指定要用于列标题的行.
Python将在df.columns中为您生成pandas.MultiIndex:

df = pandas.read_csv(‘DollarUnitSales.csv’,header = [0,1])

您还可以使用两行以上或非连续行来指定列标题:

df = pandas.read_table(‘DataSheet1.csv’,header = [0,2,3])

这是documentation.

点赞