Используйте несколько строк в качестве заголовка столбца для панд - PullRequest
0 голосов
/ 30 мая 2019

У меня есть датафрейм, который я импортировал следующим образом.

df = pd.read_excel("./Data.xlsx", sheet_name="Customer Care", header=None)

Я хотел бы установить первые три строки в качестве заголовков столбцов, но не могу понять, как это сделать. Я дал следующую попытку:

df.columns = df.iloc[0:3,:]

но это не похоже на работу.

Я видел нечто подобное в этом ответе. Но это применимо только в том случае, если все вложенные столбцы будут именоваться одинаково, что не всегда так.

Буду признателен за любые рекомендации.

1 Ответ

4 голосов
/ 30 мая 2019
df = pd.read_excel(
    "./Data.xlsx", 
    sheet_name="Customer Care", 
    header=[0,1,2]
)

Это скажет пандам прочитать первые три строки файла excel как метки многоиндексных столбцов.

Если вы хотите изменить строки после загрузки, установите их как столбцы

#set the first three rows as columns
df.columns=pd.MultiIndex.from_arrays(df.iloc[0:3].values)
#delete the first three rows (because they are also the columns
df=df.iloc[3:]
...