我正在尝试将非结构化 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/