pandas.read_table
-
pandas.read_table(filepath_or_buffer: Union[str, pathlib.Path, IO[~AnyStr]], sep='t', delimiter=None, header='infer', names=None, index_col=None, usecols=None, squeeze=False, prefix=None, mangle_dupe_cols=True, dtype=None, engine=None, converters=None, true_values=None, false_values=None, skipinitialspace=False, skiprows=None, skipfooter=0, nrows=None, na_values=None, keep_default_na=True, na_filter=True, verbose=False, skip_blank_lines=True, parse_dates=False, infer_datetime_format=False, keep_date_col=False, date_parser=None, dayfirst=False, cache_dates=True, iterator=False, chunksize=None, compression='infer', thousands=None, decimal=b'.', lineterminator=None, quotechar='"', quoting=0, doublequote=True, escapechar=None, comment=None, encoding=None, dialect=None, error_bad_lines=True, warn_bad_lines=True, delim_whitespace=False, low_memory=True, memory_map=False, float_precision=None)[source] -
Чтение общего текстового файла с разделителями в DataFrame.
Также поддерживает необязательное итеративное чтение или разделение файла на части.
Дополнительную помощь можно найти в онлайн-документации по Инструментам ввода-вывода.
Параметры: -
filepath_or_buffer : str, path object or file-like object -
Любой допустимый путь к строке является приемлемым. Строка может быть URL-адресом. Допустимые схемы URL включают http, ftp, s3 и file. Для URL-адресов файлов ожидается хост. Локальный файл может быть: file://localhost/path/to/table.csv.
Если вы хотите передать объект пути, pandas принимает любой
os.PathLike.Под объектом типа «подобный файлу» мы подразумеваем объекты с методом
read(), например, обработчик файлов (например, с помощью встроенной функцииopen) илиStringIO. -
sep : str, default ‘\t’ (tab-stop) -
Разделитель, используемый для разбиения данных. Если sep имеет значение None, движок C не может автоматически определить разделитель, но движок Python-парсинга может, что означает, что последний будет использован и автоматически определит разделитель с помощью встроенного инструмента распознавания разделителей Python,
csv.Sniffer. Кроме того, разделители длиной более 1 символа и отличающиеся от'\s+'будут интерпретироваться как регулярные выражения и также заставят использовать движок парсинга Python. Обратите внимание, что разделители-регулярные выражения могут игнорировать данные в кавычках. Пример регулярного выражения:'\r\t'. -
delimiter : str, default None -
Псевдоним для sep.
-
header : int, list of int, default ‘infer’ -
Номер(а) строки(ок), используемых в качестве имен столбцов и начала данных. По умолчанию имена столбцов определяются автоматически: если имена не переданы, поведение идентично
header=0, и имена столбцов выводятся из первой строки файла, если имена столбцов явно указаны, то поведение идентичноheader=None. Явно передайтеheader=0для замены существующих имён. Заголовок может быть списком целых чисел, которые указывают позиции строк для многоуровневого индекса столбцов, например, [0,1,3]. Промежуточные строки, которые не указаны, будут пропущены (например, 2 в данном примере пропущен). Обратите внимание, что этот параметр игнорирует строки с комментариями и пустые строки, еслиskip_blank_lines=True, поэтомуheader=0обозначает первую строку данных, а не первую строку файла. -
names : array-like, optional -
Список имен столбцов для использования. Если файл не содержит строки заголовка, необходимо явно указать
header=None. Дубликаты в этом списке не допускаются. -
index_col : int, str, sequence of int / str, or False, default None -
Столбец(ы) для использования в качестве меток строк
DataFrame, указанный либо как имя строки, либо как индекс столбца. Если передана последовательность int/str, используется MultiIndex.Примечание:
index_col=Falseможет быть использован для того, чтобы запретить pandas использовать первый столбец в качестве индекса, например, при наличии поврежденного файла с разделителями в конце каждой строки. -
usecols : list-like or callable, optional -
Возврат подмножества столбцов. Если список-подобный объект, все элементы должны быть либо позиционными (т.е. целочисленными индексами в столбцах документа), либо строками, соответствующими именам столбцов, предоставленными пользователем в
namesили выведенными из строки(ок) заголовка документа. Например, допустимым списком-подобнымusecolsпараметром будет[0, 1, 2]или['foo', 'bar', 'baz']. Порядок элементов игнорируется, поэтомуusecols=[0, 1]эквивалентно[1, 0]. Для создания DataFrame изdataс сохранением порядка элементов используйтеpd.read_csv(data, usecols=['foo', 'bar'])[['foo', 'bar']]для столбцов в порядке['foo', 'bar']илиpd.read_csv(data, usecols=['foo', 'bar'])[['bar', 'foo']]для порядка['bar', 'foo'].Если вызываемый объект, вызываемая функция будет вычислена относительно имён столбцов, возвращая имена, где вызываемая функция принимает значение True. Примером допустимого вызываемого аргумента будет
lambda x: x.upper() in ['AAA', 'BBB', 'DDD']. Использование этого параметра приводит к значительно более быстрому парсингу и меньшему потреблению памяти. -
squeeze : bool, default False -
Если проанализированные данные содержат только один столбец, то возвращается Series.
-
prefix : str, optional -
Префикс, добавляемый к номерам столбцов, если нет заголовка, например, «X» для X0, X1, …
-
mangle_dupe_cols : bool, default True -
Дублирующиеся столбцы будут указаны как «X», «X.1», … «X.N», а не «X»…«X». Передача значения False приведет к перезаписи данных, если в столбцах есть дублирующиеся имена.
-
dtype : Type name or dict of column -> type, optional -
Тип данных для данных или столбцов. Например, {‘a’: np.float64, ‘b’: np.int32, ‘c’: ‘Int64’} Используйте
strилиobjectвместе с соответствующими настройкамиna_valuesдля сохранения и невключения интерпретации типа данных. Если указаны преобразователи, они будут применены ВМЕСТО преобразования типа данных. -
engine : {‘c’, ‘python’}, optional -
Движок парсинга для использования. Движок C быстрее, а движок Python в настоящее время более функционален.
-
converters : dict, optional -
Словарь функций для преобразования значений в определенных столбцах. Ключи могут быть целыми числами или метками столбцов.
-
true_values : list, optional -
Значения, которые следует рассматривать как True.
-
false_values : list, optional -
Значения, которые следует рассматривать как False.
-
skipinitialspace : bool, default False -
Пропустить пробелы после разделителя.
-
skiprows : list-like, int or callable, optional -
Номера строк для пропуска (индексируются с 0) или количество строк для пропуска (целое число) в начале файла.
Если вызываемый объект, вызываемая функция будет вычислена по отношению к индексам строк, возвращая True, если строка должна быть пропущена, и False в противном случае. Примером допустимого вызываемого аргумента будет
lambda x: x in [0, 2]. -
skipfooter : int, default 0 -
Количество строк в нижней части файла для пропуска (не поддерживается с движком «c»).
-
nrows : int, optional -
Количество строк файла для чтения. Полезно для чтения фрагментов больших файлов.
-
na_values : scalar, str, list-like, or dict, optional -
Дополнительные строки, которые следует распознавать как 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 -
Включать или нет значения NaN по умолчанию при разборе данных. В зависимости от того, передано ли
na_values, поведение следующее:- Если
keep_default_naимеет значение True, иna_valuesуказаны,na_valuesдобавляется к значениям NaN по умолчанию, используемым для разбора. - Если
keep_default_naимеет значение True, иna_valuesне указаны, для разбора используются только значения NaN по умолчанию. - Если
keep_default_naимеет значение False, иna_valuesуказаны, для разбора используются только значения NaN, указанныеna_values. - Если
keep_default_naимеет значение False, иna_valuesне указаны, ни одна строка не будет распознаваться как NaN.
Обратите внимание, что если
na_filterпередано со значением False, параметрыkeep_default_naиna_valuesбудут игнорироваться. - Если
-
na_filter : bool, default True -
Обнаружение маркеров пропущенных значений (пустые строки и значения na_values). В данных без каких-либо пропущенных значений передача na_filter=False может улучшить производительность чтения большого файла.
-
verbose : bool, default False -
Указать количество значений NA, размещенных в нечисловых столбцах.
-
skip_blank_lines : bool, default True -
Если True, пропускать пустые строки, а не интерпретировать их как значения NaN.
-
parse_dates : bool or list of int or names or list of lists or dict, default False -
Поведение следующее:
- boolean. Если 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. Чтобы проанализировать индекс или столбец с сочетанием часовых поясов, укажитеdate_parserдля частично применённогоpandas.to_datetime()сutc=True. Дополнительную информацию см. в Разбор CSV с различными часовыми поясами.Примечание: существует быстрый путь для дат в формате iso8601.
-
infer_datetime_format : bool, default False -
Если True и
parse_datesвключен, pandas попытается определить формат строк дат в столбцах и, если это возможно, переключится на более быстрый метод их разбора. В некоторых случаях это может увеличить скорость разбора на 5–10 раз. -
keep_date_col : bool, default False -
Если True и
parse_datesопределяет объединение нескольких столбцов, сохранить исходные столбцы. -
date_parser : function, optional -
Функция для преобразования последовательности строковых столбцов в массив экземпляров дат. По умолчанию используется
dateutil.parser.parserдля выполнения преобразования. Pandas попытается вызватьdate_parserтремя различными способами, переходя к следующему, если возникает исключение: 1) Передать один или несколько массивов (как определеноparse_dates) в качестве аргументов; 2) склеить (по строкам) строковые значения из столбцов, определённыхparse_dates, в единый массив и передать его; и 3) вызватьdate_parserодин раз для каждой строки, используя одну или несколько строк (соответствующих столбцам, определённымparse_dates) в качестве аргументов. -
dayfirst : bool, default False -
Даты в формате ДД/ММ, международный и европейский формат.
-
cache_dates : boolean, default True -
Если True, использовать кэш уникальных преобразованных дат для применения преобразования даты. Может значительно ускорить разбор, когда встречаются повторяющиеся строковые представления дат, особенно с временными зонами.
Добавлена в версии 0.25.0.
-
iterator : bool, default False -
Возвращает объект TextFileReader для итерации или получения кусков с
get_chunk(). -
chunksize : int, optional
-
-
Возвращает объект TextFileReader для итерации. См. документацию IO Tools для получения дополнительной информации о
iteratorиchunksize. -
compression : {‘infer’, ‘gzip’, ‘bz2’, ‘zip’, ‘xz’, None}, default ‘infer’ -
Для сжатия данных на диске в реальном времени. Если ‘infer’ и
filepath_or_buffer— путь к файлу, то определить тип сжатия по следующим расширениям: ‘.gz’, ‘.bz2’, ‘.zip’, или ‘.xz’ (в противном случае сжатие не применяется). Если используется ‘zip’, архив ZIP должен содержать только один файл данных для чтения. Установить в значение None для отключения сжатия.Введено в версии 0.18.1: поддержка сжатия ‘zip’ и ‘xz’.
-
thousands : str, optional -
Разделитель тысяч.
-
decimal : str, default ‘.’ -
Символ, распознаваемый как десятичная точка (например, используйте ‘,’ для европейских данных).
-
lineterminator : str (length 1), optional -
Символ для разделения файла на строки. Действительно только с C парсером.
-
quotechar : str (length 1), optional -
Символ, используемый для обозначения начала и конца цитируемого элемента. Цитируемые элементы могут включать разделитель, и он будет проигнорирован.
-
quoting : int or csv.QUOTE_* instance, default 0 -
Управление цитированием полей в соответствии со значениями
csv.QUOTE_*констант. Используйте одно из значений QUOTE_MINIMAL (0), QUOTE_ALL (1), QUOTE_NONNUMERIC (2) или QUOTE_NONE (3). -
doublequote : bool, default True -
Когда quotechar указан, а quoting не
QUOTE_NONE, указывает, следует ли интерпретировать два последовательных quotechar элемента ВНУТРИ поля как одинquotecharэлемент. -
escapechar : str (length 1), optional -
Символьная строка, используемая для экранирования других символов.
-
comment : str, optional -
Указывает, что остаток строки не должен анализироваться. Если он найден в начале строки, вся строка будет пропущена. Этот параметр должен быть одиночным символом. Как пустые строки (пока
skip_blank_lines=True), полностью комментируемые строки игнорируются параметромheader, но неskiprows. Например, еслиcomment='#', анализ#empty\na,b,c\n1,2,3сheader=0приведет к тому, что ‘a,b,c’ будет обработано как заголовок. -
encoding : str, optional -
Кодировка UTF для чтения/записи (например, ‘utf-8’). Список стандартных кодировок Python.
-
dialect : str or csv.Dialect, optional -
Если указан, этот параметр переопределяет значения (по умолчанию или нет) для следующих параметров:
delimiter,doublequote,escapechar,skipinitialspace,quotechar, иquoting. Если необходимо переопределить значения, будет выведено предупреждение ParserWarning. Более подробная информация см. в документации csv.Dialect. -
error_bad_lines : bool, default True -
Строки с слишком большим количеством полей (например, строка csv со слишком многими запятыми) по умолчанию приведут к ошибке, и DataFrame не будет возвращен. Если False, то эти «плохие строки» будут удалены из возвращаемого DataFrame.
-
warn_bad_lines : bool, default True -
Если error_bad_lines = False, а warn_bad_lines = True, для каждой «плохой строки» будет выведено предупреждение.
-
delim_whitespace : bool, default False -
Указывает, будет ли пробел (например,
' 'или' ') использоваться как разделитель. Эквивалентно установкеsep='\s+'. Если этот параметр установлен в True, для параметраdelimiterничего не должно быть передано.Введено в версии 0.18.1: поддержка Python парсера.
-
low_memory : bool, default True -
Внутренняя обработка файла частями, что приводит к снижению использования памяти при парсинге, но, возможно, к смешанному выводу типов. Для предотвращения смешанных типов установите False или укажите тип с параметром
dtype. Обратите внимание, что весь файл все равно читается в один DataFrame. Используйте параметрchunksizeилиiteratorдля возврата данных частями. (Действительно только с C парсером). -
memory_map : bool, default False -
Если для
filepath_or_bufferуказан путь к файлу, отобразите объект файла напрямую в памяти и получите доступ к данным напрямую. Использование этого параметра может улучшить производительность, поскольку теперь нет необходимости в операциях ввода-вывода. -
float_precision : str, optional -
Указывает, какой преобразователь должен использовать C движок для значений с плавающей точкой. Доступные варианты:
Noneдля обычного преобразователя,highдля преобразователя высокой точности иround_tripдля преобразователя с обратным отображением.
Возвращает: - DataFrame или TextParser
-
Файл значений, разделенных запятыми (csv), возвращается как двумерная структура данных с маркированными осями.
См. также
Примеры
>>> pd.read_table('data.csv') # doctest: +SKIP-
© 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_table.html