Я пытаюсь очистить файл Excel, который имеет случайное форматирование. Файл имеет пустые строки сверху, с фактическими заголовками столбцов в строке 8. Я избавился от пустых строк и теперь хочу использовать строку строки 8 в качестве истинных заголовков столбцов в кадре данных.
Я использую этот код для получения позиции заголовков столбцов путем поиска строки 'Destination' во всем фрейме данных, а затем определяю местоположение значения True в логической маске, чтобы получить список для переименования заголовков столбцов:
boolmsk=df.apply(lambda row: row.astype(str).str.contains('Destination').any(), axis=1)
print(boolmsk)
hdrindex=boolmsk.index[boolmsk == True].tolist()
print(hdrindex)
hdrstr=df.loc[7]
print(hdrstr)
df2=df.rename(columns=hdrstr)
Однако, когда я пытаюсь использовать hdrindex в качестве переменной, я получаю ошибки при создании второго кадра данных (ie, когда я пытаюсь использовать hdrstr для замены заголовков столбцов.)
boolmsk=df.apply(lambda row: row.astype(str).str.contains('Destination').any(), axis=1)
print(boolmsk)
hdrindex=boolmsk.index[boolmsk == True].tolist()
print(hdrindex)
hdrstr=df.loc[hdrindex]
print(hdrstr)
df2=df.rename(columns=hdrstr)
Как использовать переменную для указания индекса, чтобы итоговый список можно было использовать в качестве заголовков столбцов?