pandas.read_fwf
-
pandas.read_fwf(filepath_or_buffer, colspecs='infer', widths=None, **kwds)[source] -
Чтение таблицы фиксированной ширины в DataFrame
Также поддерживает необязательное итеративное чтение или разбиение файла на фрагменты.
Дополнительную помощь можно найти в документации по инструментам ввода-вывода.
Параметры:
filepath_or_buffer : str, pathlib.Path, py._path.local.LocalPath или любой объект с методом read() (например, дескриптор файла или StringIO)
Строка может быть URL-адресом. Допустимые схемы URL-адресов включают http, ftp, s3 и file. Для URL-адресов файлов ожидается хост. Например, локальный файл может быть file://localhost/путь/к/таблице.csv
colspecs : список пар (int, int) или ‘infer’. необязательный
Список пар (кортежей), задающих границы полей с фиксированной шириной каждой строки в виде полуоткрытых интервалов (т.е. [от, до[ ). Строковое значение ‘infer’ может использоваться для указания парсеру попробовать определить спецификации столбцов из первых 100 строк данных (по умолчанию=’infer’).
widths : список целых чисел. необязательный
Список ширины полей, который можно использовать вместо ‘colspecs’, если интервалы являются непрерывными.
delimiter : str, по умолчанию
NoneАльтернативное имя аргумента для sep.
delim_whitespace : boolean, по умолчанию False
Указывает, будет ли использоваться пробел (например,
' 'или' ') в качестве разделителя. Эквивалентно установлениюsep='\s+'. Если этот параметр установлен в True, то для параметраdelimiterничего не должно передаваться.Введено в версии 0.18.1: поддержка Python-парсера.
header : int или список целых чисел, по умолчанию ‘infer’
Номер(а) строки, используемой(ые) в качестве имён столбцов и начала данных. По умолчанию поведение такое же, как если бы оно было установлено в 0, если не передан
names, иначеNone. Явно передайтеheader=0для возможности замены существующих имён. Заголовок может быть списком целых чисел, которые задают расположения строк для многоуровневого индекса столбцов, например, [0,1,3]. Промежуточные строки, которые не указаны, будут пропущены (например, 2 в данном примере пропущена). Обратите внимание, что этот параметр игнорирует комментированные строки и пустые строки, еслиskip_blank_lines=True, поэтому header=0 обозначает первую строку данных, а не первую строку файла.names : массив-подобный объект, по умолчанию None
Список имён столбцов для использования. Если файл не содержит строку заголовка, то вы должны явно передать header=None. Дубликаты в этом списке не допускаются, если mangle_dupe_cols=True, что является значением по умолчанию.
index_col : int или последовательность или False, по умолчанию None
Столбец для использования в качестве меток строк DataFrame. Если задана последовательность, используется MultiIndex. Если у вас есть повреждённый файл с разделителями в конце каждой строки, вы можете рассмотреть возможность index_col=False, чтобы заставить pandas _не_ использовать первый столбец в качестве индекса (имён строк)
usecols : массив-подобный объект, по умолчанию None
Возвращает подмножество столбцов. Все элементы в этом массиве должны быть либо позиционными (т.е. целочисленными индексами в столбцы документа), либо строками, соответствующими именам столбцов, предоставленным либо пользователем в
names, либо полученным из строки(строк) заголовка документа. Например, допустимым параметромusecolsбыло бы [0, 1, 2] или [‘foo’, ‘bar’, ‘baz’]. Использование этого параметра приводит к значительно более быстрому времени парсинга и меньшей потребности в памяти.as_recarray : boolean, по умолчанию False
УСТЕРЕЖДЁННО: этот аргумент будет удалён в будущих версиях. Пожалуйста, вызовите
pd.read_csv(...).to_records()вместо этого.Возвращает NumPy recarray вместо DataFrame после разбора данных. Если установлено в True, этот параметр имеет приоритет над параметром
squeeze. Кроме того, поскольку индексы строк недоступны в таком формате, параметрindex_colбудет проигнорирован.squeeze : boolean, по умолчанию False
Если проанализированные данные содержат только один столбец, возвращает Series
prefix : str, по умолчанию None
Префикс для добавления к номерам столбцов, если нет заголовка, например, ‘X’ для X0, X1, ...
mangle_dupe_cols : boolean, по умолчанию True
Дублирующие столбцы будут указаны как ‘X.0’...’X.N’, а не ‘X’...’X’. Передача False приведет к перезаписи данных, если в столбцах есть дублируемые имена.
dtype : Имя типа или словарь столбец -> тип, по умолчанию None
Тип данных для данных или столбцов. Например, {‘a’: np.float64, ‘b’: np.int32} (не поддерживается с engine=’python’). Используйте
strилиobjectдля сохранения и не интерпретации dtype.converters : словарь, по умолчанию None
Словарь функций для преобразования значений в определённых столбцах. Ключи могут быть целыми числами или метками столбцов
true_values : список, по умолчанию None
Значения, которые следует рассматривать как True
false_values : список, по умолчанию None
Значения, которые следует рассматривать как False
skipinitialspace : boolean, по умолчанию False
Пропустить пробелы после разделителя.
skiprows : список или целое число, по умолчанию None
Номера строк для пропуска (индексированные с 0) или количество строк для пропуска (int) в начале файла
skipfooter : int, по умолчанию 0
Количество строк в конце файла для пропуска (не поддерживается с engine=’c’)
skip_footer : int, по умолчанию 0
УСТЕРЕЖДЁННО: используйте вместо этого параметр
skipfooter, так как они идентичныnrows : int, по умолчанию None
Количество строк файла для чтения. Полезно для чтения фрагментов больших файлов
na_values : скаляр, str, список или словарь, по умолчанию 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’, ‘nan’`.
keep_default_na : bool, по умолчанию True
Если na_values заданы и keep_default_na=False, значения NaN по умолчанию переопределяются, иначе они добавляются.
na_filter : boolean, по умолчанию True
Обнаружить маркеры пропущенных значений (пустые строки и значения na_values). В данных без каких-либо NA, передача na_filter=False может улучшить производительность чтения большого файла
verbose : boolean, по умолчанию False
Указать количество значений NA, размещённых в нечисловых столбцах
skip_blank_lines : boolean, по умолчанию True
Если True, пропускать пустые строки, а не интерпретировать как значения NaN
parse_dates : boolean или список целых чисел или имён или список списков или словарь, по умолчанию False
- boolean. Если True -> попытка разбора индекса.
- список целых чисел или имён. Например, если [1, 2, 3] -> попытка разбора столбцов 1, 2, 3 по отдельности как столбцов дат.
-
- список списков. Например, если [[1, 3]] -> объединить столбцы 1 и 3 и разобрать как
-
один столбец дат.
- словарь, например, {‘foo’ : [1, 3]} -> разобрать столбцы 1, 3 как дату и назвать результат ‘foo’
Примечание: существует быстрый путь для дат в формате iso8601.
infer_datetime_format : boolean, по умолчанию False
Если True и parse_dates включено, pandas попытается определить формат строк дат в столбцах и, если это возможно, переключится на более быстрый метод их разбора. В некоторых случаях это может увеличить скорость разбора на ~5-10x.
keep_date_col : boolean, по умолчанию False
Если True и parse_dates указывает на объединение нескольких столбцов, то сохранить исходные столбцы.
date_parser : функция, по умолчанию None
Функция для преобразования последовательности столбцов строк в массив экземпляров дат. По умолчанию используется
dateutil.parser.parserдля преобразования. Pandas попытается вызвать date_parser тремя различными способами, переходя к следующему, если возникает исключение: 1) передать один или несколько массивов (как определено parse_dates) в качестве аргументов; 2) объединить (по строкам) строковые значения из столбцов, определённых parse_dates, в один массив и передать его; и 3) вызвать date_parser один раз для каждой строки, используя один или несколько строк (соответствующие столбцам, определённым parse_dates) в качестве аргументов.dayfirst : boolean, по умолчанию False
Даты в формате ДД/ММ, международный и европейский формат
iterator : boolean, по умолчанию False
Возвращает объект TextFileReader для итерации или получения фрагментов с
get_chunk().chunksize : int, по умолчанию None
Возвращает объект TextFileReader для итерации. См. раздел IO Tools документации для получения дополнительной информации по
iteratorиchunksize.compression : {‘infer’, ‘gzip’, ‘bz2’, ‘zip’, ‘xz’, None}, по умолчанию ‘infer’
Для онлайн-распаковки данных на диске. Если ‘infer’, то использовать gzip, bz2, zip или xz, если filepath_or_buffer является строкой, заканчивающейся на ‘.gz’, ‘.bz2’, ‘.zip’, или ‘xz’, соответственно, и без распаковки в противном случае. Если используется ‘zip’, то ZIP-архив должен содержать только один файл данных для чтения. Установите None для отказа от распаковки.
Введено в версии 0.18.1: поддержка сжатия ‘zip’ и ‘xz’.
thousands : str, по умолчанию None
Разделитель тысяч
decimal : str, по умолчанию ‘.’
Символ, распознаваемый как десятичная точка (например, используйте ‘,’ для европейских данных).
float_precision : строка, по умолчанию None
Указывает, какой преобразователь C-движок должен использовать для значений с плавающей точкой. Доступны варианты
Noneдля обычного преобразователя,highдля преобразователя высокой точности иround_tripдля преобразователя обратного преобразования.lineterminator : str (длина 1), по умолчанию None
Символ для разделения файла на строки. Действителен только с C-парсером.
quotechar : str (длина 1), необязательный
Символ, используемый для обозначения начала и конца цитируемого элемента. Цитируемые элементы могут включать разделитель, и он будет проигнорирован.
quoting : int или экземпляр csv.QUOTE_*, по умолчанию 0
Управление поведением цитирования полей в соответствии с
csv.QUOTE_*константами. Используйте одно из QUOTE_MINIMAL (0), QUOTE_ALL (1), QUOTE_NONNUMERIC (2) или QUOTE_NONE (3).doublequote : boolean, по умолчанию
TrueКогда quotechar задан и quoting не
QUOTE_NONE, укажите, интерпретировать ли два последовательных элемента quotechar ВНУТРИ поля как одинquotecharэлемент.escapechar : str (длина 1), по умолчанию None
Символ длиной в один символ, используемый для экранирования разделителя, когда quoting = QUOTE_NONE.
comment : str, по умолчанию None
Указывает, что остальная часть строки не должна анализироваться. Если он находится в начале строки, строка будет пропущена полностью. Этот параметр должен быть одиночным символом. Как и пустые строки (пока
skip_blank_lines=True), полностью комментированные строки игнорируются параметромheader, но неskiprows. Например, если comment=’#’, парсинг ‘#emptyna,b,cn1,2,3’ сheader=0приведёт к тому, что ‘a,b,c’ будет обработана как заголовок.encoding : str, по умолчанию None
Кодировка для UTF при чтении/записи (например, ‘utf-8’). Список стандартных кодировок Python
диалект : str или экземпляр csv.Dialect, по умолчанию None
Если None, используется диалект Excel. Игнорируется, если разделитель имеет длину более 1 символа. Дополнительные сведения см. в документации к csv.Dialect
tupleize_cols : boolean, по умолчанию False
Оставить список кортежей столбцов как есть (по умолчанию преобразовать в многоуровневый индекс по столбцам)
error_bad_lines : boolean, по умолчанию True
Строки с слишком большим количеством полей (например, строка CSV с слишком многими запятыми) по умолчанию вызовут исключение и DataFrame не будет возвращен. Если False, эти «плохие строки» будут удалены из возвращаемого DataFrame. (Только при использовании C-парсера)
warn_bad_lines : boolean, по умолчанию True
Если error_bad_lines False, а warn_bad_lines True, будет выведено предупреждение для каждой «плохой строки». (Только при использовании C-парсера).
low_memory : boolean, по умолчанию True
Внутренне обрабатывает файл частями, что приводит к снижению использования памяти во время парсинга, но, возможно, к смешанному типу вывода. Чтобы избежать смешанных типов, установите False или укажите тип с параметром
dtype. Обратите внимание, что весь файл все равно считывается в один DataFrame. Используйте параметрchunksizeилиiterator, чтобы вернуть данные частями. (Только при использовании C-парсера)buffer_lines : int, по умолчанию None
УСТАРЕЛО: этот аргумент будет удален в будущей версии, поскольку его значение не учитывается парсером
compact_ints : boolean, по умолчанию False
УСТАРЕЛО: этот аргумент будет удален в будущей версии
Если compact_ints True, то для любого столбца целочисленного типа парсер попытается привести его к целочисленному типу наименьшего размера, либо со знаком, либо без знака, в зависимости от спецификации из параметра
use_unsigned.use_unsigned : boolean, по умолчанию False
УСТАРЕЛО: этот аргумент будет удален в будущей версии
Если столбцы целых чисел сжимаются (т.е.
compact_ints=True), укажите, должен ли столбец быть сжат до целочисленного типа наименьшего размера со знаком или без знака.memory_map : boolean, по умолчанию False
Если для
filepath_or_bufferуказан путь к файлу, отобразить объект файла непосредственно в памяти и получить доступ к данным непосредственно оттуда. Использование этого параметра может улучшить производительность, поскольку теперь нет накладных расходов на ввод-вывод.Возвращает: результат : DataFrame или TextParser
Также, ‘разделитель’ используется для указания символа заполнения полей, если это не пробелы (например, ‘~’).
© 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.19.2/generated/pandas.read_fwf.html