我正在阅读一个excel文件,但出于这个问题的目的,我将提供一个我的数据帧的示例。
我有dataframe
这样:
df = pd.DataFrame([
['Texas 1', '111', '222', '333'],
['Texas 1', '444', '555', '666'],
['Texas 2', '777','888','999']
])
df[2] = df[2].replace('222', '')
0 1 2 3
a Texas 1 111 333
b Texas 1 444 555 666
c Texas 2 777 888 999
我希望能够根据非空白的第一行的值定义多索引。 所以像这样:
0 1 3
Texas 1 111 333 444 555 666
Texas 2 111 333 777 888 999
问题是行a
中的值并不总是在同一列中,因此我需要一种方法来查找哪些列在第一行中具有值并使用该列号作为索引。到目前为止,我像这样阅读我的excel文件:
df1 = pd.read_excel('excel.XLS', index_col=[1,11,24,37])
我一直在寻找一种方法来读取不是NaN
且位于row a
的单元格,并找到要存储在列表中的列号,并将其用于我的{{ 1}}。但我无法弄清楚如何。任何正确方向的指针都会很棒!