pandas.read_excel
-
pandas.read_excel(io, sheet_name=0, header=0, names=None, index_col=None, parse_cols=None, usecols=None, squeeze=False, dtype=None, engine=None, converters=None, true_values=None, false_values=None, skiprows=None, nrows=None, na_values=None, keep_default_na=True, verbose=False, parse_dates=False, date_parser=None, thousands=None, comment=None, skip_footer=0, skipfooter=0, convert_float=True, mangle_dupe_cols=True, **kwds)[source] -
Чтение файла Excel в pandas DataFrame.
Поддерживает расширения файлов
xlsиxlsxиз локальной файловой системы или URL. Поддерживается возможность чтения одного листа или списка листов.Параметры: -
io : str, file descriptor, pathlib.Path, ExcelFile or xlrd.Book -
Строка может быть URL. Допустимые схемы URL включают http, ftp, s3, gcs и file. Для URL-адресов файлов ожидается хост. Например, локальный файл может быть /path/to/workbook.xlsx.
-
sheet_name : str, int, list, or None, default 0 -
Строки используются для имён листов. Целые числа используются для позиций листов с нулевой индексацией. Список строк/целых чисел используется для запроса нескольких листов. Укажите None, чтобы получить все листы.
Доступные варианты:
- По умолчанию
0: 1-й лист какDataFrame -
1: 2-й лист какDataFrame -
"Sheet1": Загрузка листа с именем “Sheet1” -
[0, 1, "Sheet5"]: Загрузка первого, второго и листа с именем “Sheet5” как словаряDataFrame - None: Все листы.
- По умолчанию
-
header : int, list of int, default 0 -
Строка (с индексом 0) для использования в качестве меток столбцов анализируемого DataFrame. Если передан список целых чисел, эти позиции строк будут объединены в
MultiIndex. Используйте None, если нет заголовка. -
names : array-like, default None -
Список имён столбцов для использования. Если файл не содержит строки заголовка, необходимо явно указать header=None.
-
index_col : int, list of int, default None -
Столбец (с индексом 0) для использования в качестве меток строк DataFrame. Передайте None, если такого столбца нет. Если передан список, эти столбцы будут объединены в
MultiIndex. Если с помощьюusecolsвыбрана подмножество данных, index_col основывается на подмножестве. -
parse_cols : int or list, default None -
Псевдоним
usecols.Устарело начиная с версии 0.21.0: Используйте
usecolsвместо этого. -
usecols : int, str, list-like, or callable default None -
Возвращает подмножество столбцов. * Если None, то анализируются все столбцы. * Если целое число, то указывает последний столбец для анализа.
Устарело начиная с версии 0.24.0: Вместо этого передайте список целых чисел от 0 до
usecolsвключительно.- Если строка, то указывает список столбцов букв Excel и диапазонов столбцов (например, “A:E” или “A,C,E:F”). Диапазоны включают обе границы.
- Если список целых чисел, то указывает список номеров столбцов для анализа.
- Если список строк, то указывает список имён столбцов для анализа.
Добавлена в версии 0.24.0.
- Если вызываемый объект, то оценивает каждое имя столбца по отношению к нему и анализирует столбец, если вызываемый объект возвращает
True.
Добавлена в версии 0.24.0.
-
squeeze : bool, default False -
Если анализируемые данные содержат только один столбец, возвращается Series.
-
dtype : Type name or dict of column -> type, default None -
Тип данных для данных или столбцов. Например, {‘a’: np.float64, ‘b’: np.int32} Используйте
objectдля сохранения данных, как они хранятся в Excel, и не интерпретируйте dtype. Если указаны преобразователи, они будут применяться ВМЕСТО преобразования dtype.Добавлена в версии 0.20.0.
-
engine : str, default None -
Если io не является буфером или путем, это должно быть установлено для идентификации io. Допустимые значения — None или xlrd.
-
converters : dict, default None -
Словарь функций для преобразования значений в определённых столбцах. Ключи могут быть целыми числами или метками столбцов, значениями являются функциями, которые принимают один аргумент — содержимое ячейки Excel, и возвращают преобразованное содержимое.
-
true_values : list, default None -
Значения, рассматриваемые как True.
Добавлена в версии 0.19.0.
-
false_values : list, default None -
Значения, рассматриваемые как False.
Добавлена в версии 0.19.0.
-
skiprows : list-like -
Строки для пропуска в начале (индексация с 0).
-
nrows : int, default None -
Количество строк для анализа.
Добавлена в версии 0.23.0.
-
na_values : scalar, str, list-like, or dict, default None -
Дополнительные строки, распознаваемые как NA/NaN. Если передан словарь, то для каждого столбца. По умолчанию следующие значения интерпретируются как NaN: ‘’, ‘#N/A’, ‘#N/A N/A’, ‘#NA’, ‘-1.#IND’, ‘-1.#QNAN’, ‘-NaN’, ‘-nan’, ‘1.#IND’, ‘1.#QNAN’, ‘N/A’, ‘NA’, ‘NULL’, ‘NaN’, ‘n/a’, ‘nan’, ‘null’.
-
keep_default_na : bool, default True -
Если na_values указаны и keep_default_na False, значения NaN по умолчанию переопределяются, в противном случае они добавляются.
-
verbose : bool, default False -
Указывает количество значений NA, помещаемых в столбцы, не являющиеся числовыми.
-
parse_dates : bool, list-like, or dict, default False -
Поведение:
- bool. Если True -> попытка анализа индекса.
- список int или имён. Например, Если [1, 2, 3] -> попытка анализа столбцов 1, 2, 3 как отдельных столбцов даты.
- список списков. Например, Если [[1, 3]] -> объединение столбцов 1 и 3 и анализ как одного столбца даты.
- словарь, например {{‘foo’ : [1, 3]}} -> анализ столбцов 1, 3 как даты и присвоение результата «foo»
Если в столбце или индексе содержится неразбираемая дата, весь столбец или индекс возвращаются без изменений как тип данных object. Для нестандартного анализа дат используйте
pd.to_datetimeпослеpd.read_csvПримечание: существует быстрый путь для дат в формате iso8601.
-
date_parser : function, optional -
Функция для преобразования последовательности строковых столбцов в массив экземпляров datetime. По умолчанию используется
dateutil.parser.parserдля преобразования. Pandas будет пытаться вызватьdate_parserтремя разными способами, переходя к следующему, если произойдёт исключение: 1) Передать один или несколько массивов (как определеноparse_dates) в качестве аргументов; 2) склеить (по строкам) строковые значения из столбцов, определённыхparse_dates, в один массив и передать его; и 3) вызватьdate_parserодин раз для каждой строки, используя одну или несколько строк (соответствующих столбцам, определённымparse_dates) в качестве аргументов. -
thousands : str, default None -
Разделитель тысяч для анализа строковых столбцов в числовые. Обратите внимание, что этот параметр необходим только для столбцов, хранящихся как TEXT в Excel, любые числовые столбцы будут автоматически анализироваться независимо от формата отображения.
-
comment : str, default None -
Исключает оставшуюся часть строки. Передайте символ или символы в этот аргумент, чтобы указать комментарии в входном файле. Любые данные между строкой комментария и концом текущей строки игнорируются.
-
skip_footer : int, default 0 -
Псевдоним
skipfooter.Устарело начиная с версии 0.23.0: Используйте
skipfooterвместо этого. -
skipfooter : int, default 0 -
Строки для пропуска в конце (индексация с 0).
-
convert_float : bool, default True -
Преобразование целочисленных чисел с плавающей точкой в целые числа (например, 1.0 –> 1). Если False, все числовые данные будут читаться как числа с плавающей точкой: Excel хранит все числа в виде чисел с плавающей точкой внутри.
-
mangle_dupe_cols : bool, default True -
Дублирующиеся столбцы будут указаны как ‘X’, ‘X.1’, …’X.N’, а не ‘X’…’X’. Передача False приведёт к перезаписи данных, если в столбцах есть дублирующиеся имена.
-
**kwds : optional -
Дополнительные ключевые аргументы могут быть переданы в
TextFileReader.
Возвращает: - DataFrame или словарь DataFrame
-
DataFrame из переданного файла Excel. См. примечания к аргументу sheet_name для получения дополнительной информации о том, когда возвращается словарь DataFrame.
См. также
Примеры
Файл можно прочитать, используя имя файла как строку или открытый файл:
>>> pd.read_excel('tmp.xlsx', index_col=0) # doctest: +SKIP Name Value 0 string1 1 1 string2 2 2 #Comment 3>>> pd.read_excel(open('tmp.xlsx', 'rb'), ... sheet_name='Sheet3') # doctest: +SKIP Unnamed: 0 Name Value 0 0 string1 1 1 1 string2 2 2 2 #Comment 3Индекс и заголовок можно указать с помощью аргументов
index_colиheader>>> pd.read_excel('tmp.xlsx', index_col=None, header=None) # doctest: +SKIP 0 1 2 0 NaN Name Value 1 0.0 string1 1 2 1.0 string2 2 3 2.0 #Comment 3Типы столбцов выводятся, но могут быть явно указаны
>>> pd.read_excel('tmp.xlsx', index_col=0, ... dtype={'Name': str, 'Value': float}) # doctest: +SKIP Name Value 0 string1 1.0 1 string2 2.0 2 #Comment 3.0Значения True, False и NA, а также разделители тысяч имеют значения по умолчанию, но также могут быть явно указаны. Передайте значения, которые вы хотите, как строки или списки строк!
>>> pd.read_excel('tmp.xlsx', index_col=0, ... na_values=['string1', 'string2']) # doctest: +SKIP Name Value 0 NaN 1 1 NaN 2 2 #Comment 3Строки комментариев во входном файле Excel можно пропустить, используя аргумент
comment>>> pd.read_excel('tmp.xlsx', index_col=0, comment='#') # doctest: +SKIP Name Value 0 string1 1.0 1 string2 2.0 2 None NaN -
© 2008–2012, AQR Capital Management, LLC, Lambda Foundry, Inc. and PyData Development Team
Licensed under the 3-clause BSD License.
https://pandas.pydata.org/pandas-docs/version/0.24.2/reference/api/pandas.read_excel.html