Spec-Zone.ru › pandas 1

pandas.read_table

pandas.read_table(filepath_or_buffer, sep=_NoDefault.no_default, delimiter=None, header='infer', names=_NoDefault.no_default, index_col=None, usecols=None, squeeze=None, prefix=_NoDefault.no_default, 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='.', lineterminator=None, quotechar='"', quoting=0, doublequote=True, escapechar=None, comment=None, encoding=None, encoding_errors='strict', dialect=None, error_bad_lines=None, warn_bad_lines=None, on_bad_lines=None, delim_whitespace=False, low_memory=True, memory_map=False, float_precision=None, storage_options=None)[source]

Чтение общего текстового файла с разделителями в DataFrame.

Также поддерживает необязательное итеративное чтение или чтение файла по частям.

Дополнительную информацию можно найти в онлайн-документации по Инструментам ввода-вывода.

END_OF_DOCUMENT_MARKER
Параметры
filepath_or_buffer:str, path object или file-like object

Любой допустимый путь в виде строки приемлем. Строка может быть URL. Допустимые схемы URL включают http, ftp, s3, gs и file. Для URL-адресов файлов ожидается хост. Локальный файл может быть: file://localhost/path/to/table.csv.

Если вы хотите передать объект пути, pandas принимает любой os.PathLike.

Под файловым объектом мы понимаем объекты с методом read(), таким как дескриптор файла (например, с помощью встроенной функции open или StringIO.

sep:str, по умолчанию ‘\t’ (табуляция)

Разделитель для использования. Если sep равен None, движок C не может автоматически определить разделитель, но движок Pythonского разбора может, что означает, что последний будет использоваться и автоматически определять разделитель с помощью встроенного инструмента анализа Python, csv.Sniffer. Кроме того, разделители длиной более 1 символа и отличающиеся от '\s+' будут интерпретироваться как регулярные выражения и также будут принудительно использовать движок Pythonского разбора. Обратите внимание, что разделители, основанные на регулярных выражениях, могут игнорировать данные в кавычках. Пример регулярного выражения: '\r\t'.

delimiter:str, по умолчанию None

Псевдоним для sep.

header:int, список int, None, по умолчанию ‘infer’

Номер(ы) строки(ок) для использования в качестве имен столбцов и начала данных. По умолчанию поведение заключается в выводе имен столбцов: если имена не переданы, поведение идентично header=0 и имена столбцов выводятся из первой строки файла, если имена столбцов переданы явно, то поведение идентично header=None. Явно укажите header=0, чтобы иметь возможность заменить существующие имена. Заголовок может быть списком целых чисел, которые указывают местоположения строк для многоуровневого индекса по столбцам, например [0,1,3]. Промежуточные строки, которые не указаны, будут пропущены (например, 2 в этом примере пропущена). Обратите внимание, что этот параметр игнорирует прокомментированные строки и пустые строки, если skip_blank_lines=True, поэтому header=0 обозначает первую строку данных, а не первую строку файла.

names:array-like, необязательно

Список имен столбцов для использования. Если файл содержит строку заголовка, то вы должны явно указать header=0 для переопределения имен столбцов. Дубликаты в этом списке запрещены.

index_col:int, str, последовательность int / str или False, необязательно, по умолчанию None

Столбец(ы) для использования в качестве меток строк DataFrame, заданный либо именем строки, либо индексом столбца. Если задана последовательность int / str, используется MultiIndex.

Примечание: index_col=False может быть использован для принудительного отказа от использования первого столбца в качестве индекса, например, при наличии поврежденного файла с разделителями в конце каждой строки.

usecols:list-like или callable, необязательно

Возвращает подмножество столбцов. Если list-like, все элементы должны быть либо позиционными (т. е. целочисленными индексами в столбцах документа), либо строками, соответствующими именам столбцов, предоставленными пользователем в names или выведенными из строки(ок) заголовка документа. Если names указаны, строки(ок) заголовка документа не учитываются. Например, допустимым list-like параметром 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'] порядка.

Если callable, функция callable будет вычисляться по отношению к именам столбцов, возвращая имена, где функция callable принимает значение True. Примером допустимого аргумента callable будет lambda x: x.upper() in ['AAA', 'BBB', 'DDD']. Использование этого параметра приводит к значительно более быстрому времени разбора и меньшему использованию памяти.

squeeze:bool, по умолчанию False

Если проанализированные данные содержат только один столбец, возвращается Series.

Устарело начиная с версии 1.4.0: Добавьте .squeeze("columns") к вызову read_table для сжатия данных.

prefix:str, необязательно

Префикс, который нужно добавить к номерам столбцов, когда нет заголовка, например, ‘X’ для X0, X1, …

Устарело начиная с версии 1.4.0: Используйте list comprehension для столбцов DataFrame после вызова read_csv.

mangle_dupe_cols:bool, по умолчанию True

Дублирующие столбцы будут заданы как ‘X’, ‘X.1’, …’X.N’, а не ‘X’…’X’. Передача False приведет к перезаписи данных при наличии дублирующих имен в столбцах.

Устарело начиная с версии 1.5.0: Не реализовано, и вместо этого будет добавлен новый аргумент для указания шаблона имен дублирующих столбцов

dtype:Имя типа или словарь столбец -> тип, необязательно

Тип данных для данных или столбцов. Например, {‘a’: np.float64, ‘b’: np.int32, ‘c’: ‘Int64’} Используйте str или object вместе с соответствующими настройками na_values, чтобы сохранить и не интерпретировать тип данных. Если указаны преобразующие функции, они будут применены ВМЕСТО преобразования типов данных.

Введено в версии 1.5.0: Добавлена поддержка defaultdict. Укажите defaultdict в качестве входных данных, где значение по умолчанию определяет тип данных столбцов, которые не перечислены явно.

engine:{‘c’, ‘python’, ‘pyarrow’}, необязательно

Движок анализатора для использования. Движки C и pyarrow быстрее, в то время как движок python в настоящее время более полнофункционален. Многопоточность в настоящее время поддерживается только движком pyarrow.

Введено в версии 1.4.0: Движок “pyarrow” был добавлен как экспериментальный движок, и некоторые функции не поддерживаются или могут работать неправильно с этим движком.

converters:словарь, необязательно

Словарь функций для преобразования значений в определенных столбцах. Ключи могут быть либо целыми числами, либо метками столбцов.

true_values:список, необязательно

Значения, рассматриваемые как True.

false_values:список, необязательно

Значения, рассматриваемые как False.

skipinitialspace:bool, по умолчанию False

Пропустить пробелы после разделителя.

skiprows:list-like, int или callable, необязательно

Номера строк для пропуска (с индексом 0) или количество строк для пропуска (int) в начале файла.

Если callable, функция callable будет вычисляться для индексов строк, возвращая True, если строка должна быть пропущена, и False в противном случае. Примером допустимого аргумента callable будет lambda x: x in [0, 2].

skipfooter:int, по умолчанию 0

Количество строк в конце файла для пропуска (не поддерживается с engine=’c’).

nrows:int, необязательно

Количество строк файла для чтения. Полезно для чтения фрагментов больших файлов.

na_values:скаляр, str, list-like или dict, необязательно

Дополнительные строки для распознавания как NA/NaN. Если передан словарь, то конкретные значения NA для каждого столбца. По умолчанию следующие значения интерпретируются как NaN: ‘’, ‘#N/A’, ‘#N/A N/A’, ‘#NA’, ‘-1.#IND’, ‘-1.#QNAN’, ‘-NaN’, ‘-nan’, ‘1.#IND’, ‘1.#QNAN’, ‘<NA>’, ‘N/A’, ‘NA’, ‘NULL’, ‘NaN’, ‘n/a’, ‘nan’, ‘null’.

keep_default_na:bool, по умолчанию 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, по умолчанию True

Обнаружить маркеры пропущенных значений (пустые строки и значение na_values). При данных без каких-либо пропущенных значений передача na_filter=False может улучшить производительность чтения большого файла.

verbose:bool, по умолчанию False

Указывать количество значений NA, помещенных в нечисловые столбцы.

skip_blank_lines:bool, по умолчанию True

Если True, пропустить пустые строки, а не интерпретировать их как NaN.

parse_dates:bool или список int или имен или список списков или словарь, по умолчанию 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:bool, default True

Если True, используется кэш уникальных преобразованных дат для применения преобразования даты и времени. Может значительно ускорить работу при парсинге дублирующихся строк дат, особенно с часовыми поясами.

Добавлен в версии 0.25.0.

iterator:bool, default False

Возвращает объект TextFileReader для итерации или извлечения фрагментов с get_chunk().

Изменено в версии 1.2: TextFileReader является менеджером контекста.

chunksize:int, optional

Возвращает объект TextFileReader для итерации. См. документацию по инструментам ввода-вывода для получения дополнительной информации о iterator и chunksize.

Изменено в версии 1.2: TextFileReader является менеджером контекста.

compression:str or dict, default ‘infer’

Для онлайн-распаковки данных на диске. Если ‘infer’ и ‘filepath_or_buffer’ — это путь, то определяется сжатие по следующим расширениям: ‘.gz’, ‘.bz2’, ‘.zip’, ‘.xz’, ‘.zst’, ‘.tar’, ‘.tar.gz’, ‘.tar.xz’ или ‘.tar.bz2’ (в противном случае сжатие отсутствует). Если используется ‘zip’ или ‘tar’, ZIP-файл должен содержать только один файл данных для чтения. Установите None для отключения распаковки. Также может быть словарь с ключом 'method', установленным в одно из {'zip', 'gzip', 'bz2', 'zstd', 'tar'} и другие пары ключ-значение передаются в zipfile.ZipFile, gzip.GzipFile, bz2.BZ2File, zstandard.ZstdDecompressor или tarfile.TarFile, соответственно. Например, следующее может быть передано для распаковки Zstandard с использованием пользовательского словаря сжатия: compression={'method': 'zstd', 'dict_data': my_compression_dict}.

Добавлен в версии 1.5.0: Добавлена поддержка файлов .tar.

Изменено в версии 1.4.0: Поддержка Zstandard.

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.

Изменено в версии 1.2: Когда encoding является None, errors="replace" передаётся в open(). В противном случае errors="strict" передаётся в open(). Это поведение ранее применялось только к engine="python".

Изменено в версии 1.3.0: encoding_errors — новый аргумент. encoding больше не влияет на обработку ошибок кодирования.

encoding_errors:str, optional, default “strict”

Как обрабатываются ошибки кодирования. Список возможных значений.

Добавлен в версии 1.3.0.

dialect:str or csv.Dialect, optional

Если указан, этот параметр переопределит значения (по умолчанию или нет) для следующих параметров: delimiter, doublequote, escapechar, skipinitialspace, quotechar и quoting. Если требуется переопределить значения, будет выведено предупреждение ParserWarning. Для получения дополнительной информации см. документацию csv.Dialect.

error_bad_lines:bool, optional, default None

Строки с слишком большим количеством полей (например, строка csv со слишком большим количеством запятых) по умолчанию вызывают исключение, и DataFrame не возвращается. Если False, то эти «плохие строки» будут исключены из возвращаемого DataFrame.

Устаревшее начиная с версии 1.3.0: Вместо параметра on_bad_lines следует использовать параметр для указания поведения при обнаружении плохой строки.

warn_bad_lines:bool, optional, default None

Если error_bad_lines равен False, а warn_bad_lines равен True, для каждой «плохой строки» будет выведено предупреждение.

Устаревшее начиная с версии 1.3.0: Вместо параметра on_bad_lines следует использовать параметр для указания поведения при обнаружении плохой строки.

on_bad_lines:{‘error’, ‘warn’, ‘skip’} or callable, default ‘error’

Указывает, что делать при обнаружении плохой строки (строки с чрезмерным количеством полей). Допустимые значения:

  • ‘error’, выдать исключение при обнаружении плохой строки.

  • ‘warn’, вывести предупреждение при обнаружении плохой строки и пропустить эту строку.

  • ‘skip’, пропустить плохие строки без вывода предупреждений или исключений при их обнаружении.

Добавлен в версии 1.3.0.

Добавлен в версии 1.4.0:

  • callable, функция с сигнатурой (bad_line: list[str]) -> list[str] | None, которая обработает одну плохую строку. bad_line — список строк, разделённых sep. Если функция возвращает None, плохая строка будет проигнорирована. Если функция возвращает новый список строк с большим количеством элементов, чем ожидалось, будет выведено ParserWarning при удалении дополнительных элементов. Поддерживается только когда engine="python"

delim_whitespace:bool, default False

Указывает, будет ли пробел (например, ' ' или '    ') использоваться в качестве разделителя. Эквивалентно установке sep='\s+'. Если этот параметр установлен в True, то параметр delimiter не должен передаваться.

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’ для обычного преобразователя, ‘legacy’ для оригинального преобразователя pandas с меньшей точностью и ‘round_trip’ для преобразователя, обеспечивающего обратный ход.

Изменено в версии 1.2.

storage_options:dict, optional

Дополнительные параметры, имеющие смысл для конкретного подключения к хранилищу, например, хост, порт, имя пользователя, пароль и т. д. Для HTTP(S) URL ключи-значения передаются в urllib.request.Request в качестве параметров заголовка. Для других URL (например, начинающихся с “s3://” и “gcs://”) ключи-значения передаются в fsspec.open. Подробнее см. fsspec и urllib, а примеры параметров хранения см. здесь.

Добавлена в версии 1.2.

Возвращает
DataFrame или TextParser

Файл с разделителями в виде запятых (csv) возвращается в виде двумерной структуры данных с маркированными осями.

См. также

DataFrame.to_csv

Запись DataFrame в файл с разделителями в виде запятых (csv).

read_csv

Чтение файла с разделителями в виде запятых (csv) в DataFrame.

read_fwf

Чтение таблицы с фиксированной шириной строк в DataFrame.

Примеры

>>> pd.read_table('data.csv')  

© 2008–2022, 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/1.5.0/reference/api/pandas.read_table.html

Spec-Zone.ru

Настройки Оффлайн Что нового Помощь О нас
Spec-Zone .ru
спецификации, руководства, описания, API