pandas.read_excel
-
pandas.read_excel(io, sheet_name=0, header=0, names=None, index_col=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, ExcelFile, xlrd.Book, path object or file-like object -
Любой допустимый путь к файлу является допустимым. Строка может быть URL-адресом. Допустимые схемы URL включают http, ftp, s3 и file. Для URL-адресов файлов ожидается хост. Локальный файл может быть:
file://localhost/path/to/table.xlsx.Если вы хотите передать объект пути, pandas принимает любой
os.PathLike.Под объектом-подобным файлу мы подразумеваем объекты с методом
read(), например, обработчик файлов (например, через встроенную функциюopen) илиStringIO. -
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 -
Строка (с нулевым индексом) для использования в качестве меток столбцов анализируемого DataFrame. Если передается список целых чисел, эти позиции строк будут объединены в
MultiIndex. Используйте None, если нет заголовка. -
names : array-like, default None -
Список имен столбцов для использования. Если файл не содержит строки заголовка, необходимо явно указать header=None.
-
index_col : int, list of int, default None -
Столбец (с нулевым индексом) для использования в качестве меток строк DataFrame. Передайте None, если такого столбца нет. Если передается список, эти столбцы будут объединены в
MultiIndex. Если подмножество данных выбирается с помощьюusecols, index_col основывается на подмножестве. -
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, а не для интерпретации типа данных. Если заданы преобразователи, они будут применены ВМЕСТО преобразования типа данных.Введено в версии 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 -
Строки, пропускаемые в начале (с нулевым индексом).
-
nrows : int, default None -
Количество строк для анализа.
Введено в версии 0.23.0.
-
na_values : scalar, str, list-like, or dict, default None -
Дополнительные строки, распознаваемые как NA/NaN. Если передан словарь, то специфические значения NA для каждого столбца. По умолчанию следующие значения интерпретируются как 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 -> попытка анализа индекса.
- список целых чисел или имен. Например, Если [1, 2, 3] -> попытка анализа столбцов 1, 2, 3 как отдельных столбцов дат.
- список списков. Например, Если [[1, 3]] -> объединение столбцов 1 и 3 и анализ как одного столбца дат.
- словарь, например, {‘foo’ : [1, 3]} -> анализ столбцов 1, 3 как дат и присвоение результата имени ‘foo’
Если столбец или индекс содержит неанализируемую дату, весь столбец или индекс возвращается неизменным как тип данных object. Для нестандартного анализа даты используйте
pd.to_datetimeпослеpd.read_excel.Примечание: существует быстрый способ для дат в формате 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 -
Разделитель тысяч для анализа строковых столбцов до числовых. Обратите внимание, что этот параметр необходим только для столбцов, хранящихся как ТЕКСТ в Excel; любые числовые столбцы будут автоматически анализироваться независимо от формата отображения.
-
comment : str, default None -
Отмечает остаток строки. Передайте символ или символы в этот аргумент, чтобы указать комментарии во входном файле. Любые данные между строкой комментария и концом текущей строки игнорируются.
-
skip_footer : int, default 0 -
Псевдоним
skipfooter.Устарело начиная с версии 0.23.0: Используйте
skipfooterвместо этого. -
skipfooter : int, default 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.25.0/reference/api/pandas.read_excel.html