我正在尝试将非结构化的excel文件转换为结构化的文件。我的标题跨两行显示(1和2)用于标题SKU,数量和销售
A B C D
1 Qty Sales
2 SKU
3 2345 Nail Varnish 2 $15
4 2346 Eye liner 3 $18
我想要的输出一旦转换为数据框应如下所示
SKU Description Qty Sales
0 2345 Nail Varnish 2 $15
1 2346 Eye liner 3 $18
我试图在
read_excel
函数中将多行作为标头传递df = pd.read_excel('D:\Sales.xlsx',header=[1,2])
但是正在获得输出为
Unnamed:0_level_0 Unnamed:1_level_0 Qty Sales
SKU SKU Unnamed:2_level_1 Unnamed:3_level_1
0 2345 Nail Varnish 2 $15
1 2346 Eyeliner 3 $18
标头
SKU
也将应用于第二列。请指导如何解决此问题。 最佳答案
如果您事先知道列名,则可以
df = pd.read_excel('D:\Sales.xlsx', header=None, names=['SKU','Description','Qty','Sales'], skiprows=2)
解释
header=None
不会从excel文件中获取默认标题names
将按顺序将列名称分配给您的数据框skiprows
将从您的excel中跳过前2行。关于python - 如何将具有多个行标题的Excel数据插入Pandas数据框,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/55361711/