使用 Python 和 pandas 从 Excel 读取时如何在多级索引中保留空白索引值?
How to retain blank index values in Multilevel index when reading from Excel with Python and pandas?
我有一个 Excel 文件,如下所示:
我正在用 pandas 阅读,如下所示:
data = pd.read_excel(excelFile,
sheetname=sheet,
skiprows=[0,1],
header=[0],
index_col=list(range(0,2)))
问题是我有空白索引值(以黄色突出显示),pandas 最终用索引列名称填充,如下所示:
我怎样才能阻止它这样做?
如果您用 space 字符填充文件中的空白单元格,您可以获得预期的结果。或者,您可以在读取文件时指定较少的选项并使用简单的 post-processing:
import pandas as pd
df = pd.read_excel('C:\problem.xlsx', skiprows = [0, 1])
# Replace NaNs with a space character
df = df.fillna(' ')
df = df.set_index(['Description', 'Segment'])
print(df)
输出:
$
Description Segment
Total 1.60528e+08
Brand A 3.67197e+07
Brand A Product 1 Awsome product 107493
Brand A Product 2 Awsome product
我有一个 Excel 文件,如下所示:
data = pd.read_excel(excelFile,
sheetname=sheet,
skiprows=[0,1],
header=[0],
index_col=list(range(0,2)))
问题是我有空白索引值(以黄色突出显示),pandas 最终用索引列名称填充,如下所示:
我怎样才能阻止它这样做?
如果您用 space 字符填充文件中的空白单元格,您可以获得预期的结果。或者,您可以在读取文件时指定较少的选项并使用简单的 post-processing:
import pandas as pd
df = pd.read_excel('C:\problem.xlsx', skiprows = [0, 1])
# Replace NaNs with a space character
df = df.fillna(' ')
df = df.set_index(['Description', 'Segment'])
print(df)
输出:
$
Description Segment
Total 1.60528e+08
Brand A 3.67197e+07
Brand A Product 1 Awsome product 107493
Brand A Product 2 Awsome product