Я пытаюсь прочитать файл Excel во фрейм данных и хочу установить индекс позже, поэтому я не хочу, чтобы панды использовали столбец 0 для значений индекса.
По умолчанию (index_col=None
), он не должен использовать столбец 0 для индекса, но я нахожу, что если в ячейке A1 таблицы есть значение нет , оно будет.
Есть ли способ переопределить-применить это поведение (я загружаю много листов, которые не имеют значения в ячейке A1)?
Это работает, как и ожидалось, когда test1.xlsx имеет значение "DATE" в ячейке A1:
In [19]: pd.read_excel('test1.xlsx')
Out[19]:
DATE A B C
0 2018-01-01 00:00:00 0.766895 1.142639 0.810603
1 2018-01-01 01:00:00 0.605812 0.890286 0.810603
2 2018-01-01 02:00:00 0.623123 1.053022 0.810603
3 2018-01-01 03:00:00 0.740577 1.505082 0.810603
4 2018-01-01 04:00:00 0.335573 -0.024649 0.810603
Но когда на листе нет значения в ячейке A1, он автоматически присваивает индексу значения столбца 0:
In [20]: pd.read_excel('test2.xlsx', index_col=None)
Out[20]:
A B C
2018-01-01 00:00:00 0.766895 1.142639 0.810603
2018-01-01 01:00:00 0.605812 0.890286 0.810603
2018-01-01 02:00:00 0.623123 1.053022 0.810603
2018-01-01 03:00:00 0.740577 1.505082 0.810603
2018-01-01 04:00:00 0.335573 -0.024649 0.810603
Это не то, что я хочу.
Желаемый результат: такой же, какпервый пример (но с «Безымянным» в качестве метки столбца, возможно).
Документация говорит
index_col: int, список int, по умолчанию None.
Столбец (0-индексированный) для использования в качестве меток строк в DataFrame.Пройдите None, если такого столбца нет.