pandas.read_csv
-
pandas.read_csv(filepath_or_buffer, sep=', ', 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, 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, iterator=False, chunksize=None, compression='infer', thousands=None, decimal=b'.', lineterminator=None, quotechar='"', quoting=0, escapechar=None, comment=None, encoding=None, dialect=None, tupleize_cols=None, error_bad_lines=True, warn_bad_lines=True, skipfooter=0, skip_footer=0, doublequote=True, delim_whitespace=False, as_recarray=None, compact_ints=None, use_unsigned=None, low_memory=True, buffer_lines=None, memory_map=False, float_precision=None)[source] -
Чтение CSV-файла (разделенного запятыми) в DataFrame
Также поддерживает необязательное итеративное чтение или разделение файла на куски.
Дополнительную помощь можно найти в онлайн-документации по инструментам ввода-вывода.
Параметры: filepath_or_buffer : str, pathlib.Path, py._path.local.LocalPath или любой объект с методом read() (например, дескриптор файла или StringIO)
Строка может быть URL-адресом. Допустимые схемы URL включают http, ftp, s3 и file. Для URL-адресов файлов ожидается хост. Например, локальный файл может быть file://localhost/path/to/table.csv
sep : str, по умолчанию ‘,’
Разделитель. Если sep равно None, C-движок не может автоматически определить разделитель, но Python-движок может, а значит, будет использован последний и автоматически определит разделитель с помощью встроенного инструмента sniffer Python,
csv.Sniffer. Кроме того, разделители длиной более 1 символа и отличные от'\s+'будут интерпретироваться как регулярные выражения и также заставят использовать Python-движок парсинга. Обратите внимание, что разделители на основе регулярных выражений могут игнорировать цитируемые данные. Пример регулярного выражения:'\r\t'delimiter : str, по умолчанию
NoneАльтернативное имя аргумента для sep.
delim_whitespace : boolean, по умолчанию False
Указывает, будут ли пробелы (например,
' 'или' ') использоваться в качестве разделителя. Эквивалентно установлениюsep='\s+'. Если этот параметр установлен в True, для параметраdelimiterничего не должно передаваться.Добавлена в версии 0.18.1: поддержка Python-парсера.
header : int или список целых чисел, по умолчанию ‘infer’
Номер(а) строки(ок) для использования в качестве имен столбцов и начала данных. По умолчанию имена столбцов определяются автоматически: если имена не переданы, поведение идентично
header=0, и имена столбцов выводятся из первой строки файла, если имена столбцов явно переданы, поведение идентичноheader=None. Явно передайтеheader=0для возможности замены существующих имен. Параметр header может быть списком целых чисел, определяющих расположения строк для многоуровневого индекса столбцов, например, [0,1,3]. Промежуточные строки, которые не указаны, будут пропущены (например, 2 в этом примере пропущена). Обратите внимание, что этот параметр игнорирует комментированные строки и пустые строки, еслиskip_blank_lines=True, поэтому header=0 обозначает первую строку данных, а не первую строку файла.names : массив-подобный объект, по умолчанию None
Список имен столбцов для использования. Если файл не содержит строки заголовка, необходимо явно передать header=None. Дубликаты в этом списке приведут к
UserWarning, что будет выдано.index_col : целое число, последовательность или False, по умолчанию None
Столбец для использования в качестве меток строк DataFrame. Если задана последовательность, используется MultiIndex. Если у вас есть повреждённый файл с разделителями в конце каждой строки, вы можете рассмотреть возможность index_col=False, чтобы принудительно не использовать первый столбец в качестве индекса (имен строк)
usecols : массив-подобный объект или вызываемый объект, по умолчанию None
Возвращает подмножество столбцов. Если массив-подобный объект, все элементы должны быть либо позиционными (т.е. целочисленными индексами в столбцы документа) или строками, соответствующими именам столбцов, предоставленных пользователем в
namesили полученных из строки заголовка документа. Например, допустимым массивом-подобным объектомusecolsпараметром будет [0, 1, 2] или [‘foo’, ‘bar’, ‘baz’].Если вызываемый объект, вызываемая функция будет вычислена для имен столбцов, возвращая имена, где вызываемая функция равна True. Примером допустимого вызываемого аргумента будет
lambda x: x.upper() in ['AAA', 'BBB', 'DDD']. Использование этого параметра приводит к значительно более быстрому времени парсинга и меньшему потреблению памяти.as_recarray : boolean, по умолчанию False
Устаревшее с версии 0.19.0: Пожалуйста, вызовите
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} Используйте
strилиobjectдля сохранения и не интерпретации dtype. Если конвертеры указаны, они будут применяться ВМЕСТО преобразования dtype.engine : {‘c’, ‘python’}, необязательно
Движок парсера для использования. C-движок быстрее, в то время как Python-движок в настоящее время более функционален.
converters : словарь, по умолчанию None
Словарь функций для преобразования значений в определенных столбцах. Ключи могут быть целыми числами или метками столбцов
true_values : список, по умолчанию None
Значения, которые следует считать True
false_values : список, по умолчанию None
Значения, которые следует считать False
skipinitialspace : boolean, по умолчанию False
Пропустить пробелы после разделителя.
skiprows : список-подобный объект или целое число или вызываемый объект, по умолчанию None
Номера строк для пропуска (с индексом 0) или количество строк для пропуска (целое число) в начале файла.
Если вызываемый объект, вызываемая функция будет вычислена для индексов строк, возвращая True, если строка должна быть пропущена, и False в противном случае. Примером допустимого вызываемого аргумента будет
lambda x: x in [0, 2].skipfooter : целое число, по умолчанию 0
Количество строк в конце файла для пропуска (не поддерживается с engine=’c’)
skip_footer : целое число, по умолчанию 0
Устаревшее с версии 0.19.0: Используйте вместо этого параметр
skipfooter, так как они идентичныnrows : целое число, по умолчанию None
Количество строк файла для чтения. Полезно для чтения фрагментов больших файлов
na_values : скаляр, строка, список-подобный объект или словарь, по умолчанию 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, по умолчанию True
Если значения na_values указаны и keep_default_na равно False, значения NaN по умолчанию переопределяются, в противном случае они добавляются.
na_filter : boolean, по умолчанию True
Обнаружение маркеров отсутствующих значений (пустые строки и значение na_values). В данных без каких-либо пропущенных значений передача 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’
Если столбец или индекс содержит неразбираемую дату, весь столбец или индекс будут возвращены неизменными как тип данных object. Для нестандартного парсинга дат используйте
pd.to_datetimeпослеpd.read_csvПримечание: существует быстрый путь для дат в формате iso8601.
infer_datetime_format : boolean, по умолчанию False
Если True и
parse_datesвключены, pandas попытается определить формат строк дат в столбцах, а если он может быть определён, переключится на более быстрый метод их анализа. В некоторых случаях это может увеличить скорость парсинга на 5-10 раз.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 : целое число, по умолчанию None
Возвращает объект TextFileReader для итерации. См. документацию по инструментам ввода-вывода для получения более подробной информации о
iteratorиchunksize.compression : {‘infer’, ‘gzip’, ‘bz2’, ‘zip’, ‘xz’, None}, по умолчанию ‘infer’
Для динамического сжатия данных на диске. Если ‘infer’ и
filepath_or_bufferявляется объектом пути, тогда обнаружить сжатие по следующим расширениям: ‘.gz’, ‘.bz2’, ‘.zip’ или ‘.xz’ (иначе нет сжатия). При использовании ‘zip’, ZIP-файл должен содержать только один файл данных, который необходимо прочитать. Установите значение None для отключения сжатия.Добавлена в версии 0.18.1: поддержка сжатия ‘zip’ и ‘xz’.
thousands : строка, по умолчанию None
Разделитель разрядов
decimal : строка, по умолчанию ‘.’
Символ, распознаваемый как десятичная точка (например, используйте ‘,’ для европейских данных).
float_precision : строка, по умолчанию None
Указывает, какой преобразователь C-движок должен использовать для чисел с плавающей запятой. Доступные варианты:
Noneдля обычного преобразователя,highдля преобразователя высокой точности иround_tripдля преобразователя с обратной совместимостью.lineterminator : строка (длина 1), по умолчанию None
Символ для разделения файла на строки. Действителен только для C-парсера.
quotechar : строка (длина 1), необязательно
Символ, используемый для обозначения начала и конца цитируемого элемента. Цитаты могут включать разделитель, который будет проигнорирован.
quoting : int или экземпляр csv.QUOTE_*, по умолчанию 0
Управление поведением цитирования полей согласно константам
csv.QUOTE_*. Используйте одну из QUOTE_MINIMAL (0), QUOTE_ALL (1), QUOTE_NONNUMERIC (2) или QUOTE_NONE (3).doublequote : булево значение, по умолчанию
TrueКогда quotechar указан и quoting не
QUOTE_NONE, указывает, следует ли интерпретировать два последовательных элемента quotechar ВНУТРИ поля как один элементquotechar.escapechar : строка (длина 1), по умолчанию None
Односимвольная строка, используемая для экранирования разделителя, когда quoting равно QUOTE_NONE.
comment : строка, по умолчанию None
Указывает, что остаток строки не должен анализироваться. Если он встречается в начале строки, вся строка будет пропущена. Этот параметр должен быть одиночным символом. Как пустые строки (поскольку
skip_blank_lines=True), полностью комментированные строки игнорируются параметромheader, но неskiprows. Например, если comment=’#’, анализ ‘#emptyna,b,cn1,2,3’ сheader=0приведет к тому, что ‘a,b,c’ будет обработана как заголовок.encoding : строка, по умолчанию None
Кодировка для использования с UTF при чтении/записи (например, ‘utf-8’). Список стандартных кодировок Python
dialect : строка или экземпляр csv.Dialect, по умолчанию None
Если задан, этот параметр переопределит значения (по умолчанию или нет) следующих параметров:
delimiter,doublequote,escapechar,skipinitialspace,quotechar, иquoting. Если требуется переопределить значения, будет выведено предупреждение ParserWarning. Более подробную информацию см. в документации csv.Dialect.tupleize_cols : булево значение, по умолчанию False
Устарело начиная с версии 0.21.0: Этот аргумент будет удален и всегда будет преобразовывать в MultiIndex
Оставить список кортежей в столбцах как есть (по умолчанию преобразовать в MultiIndex для столбцов)
error_bad_lines : булево значение, по умолчанию True
Строки с слишком большим количеством полей (например, строка csv с избыточным количеством запятых) по умолчанию приведут к ошибке и не будет возвращён DataFrame. Если False, эти «плохие строки» будут удалены из возвращаемого DataFrame.
warn_bad_lines : булево значение, по умолчанию True
Если error_bad_lines равно False, а warn_bad_lines равно True, будет выведено предупреждение для каждой «плохой строки».
low_memory : булево значение, по умолчанию True
Внутренне обрабатывает файл частями, что приводит к меньшему потреблению памяти при анализе, но возможно, к смешанному определению типов. Чтобы избежать смешанных типов, установите False или укажите тип с параметром
dtype. Обратите внимание, что весь файл всё равно читается в один DataFrame, используйте параметрыchunksizeилиiteratorдля возвращения данных частями. (Только для C парсера)buffer_lines : целое число, по умолчанию None
Устарело начиная с версии 0.19.0: Этот аргумент не учитывается парсером
compact_ints : булево значение, по умолчанию False
Устарело начиная с версии 0.19.0: Аргумент перенесён в
pd.to_numericЕсли compact_ints равно True, то для любого столбца с целочисленным типом данных парсер попытается преобразовать его в целочисленный тип данных наименьшей возможной длины, со знаком или без знака в зависимости от указания из параметра
use_unsigned.use_unsigned : булево значение, по умолчанию False
Устарело начиная с версии 0.19.0: Аргумент перенесён в
pd.to_numericЕсли целочисленные столбцы сжимаются (т.е.
compact_ints=True), укажите, следует ли сжимать столбец до целочисленного типа данных с наименьшей длиной со знаком или без знака.memory_map : булево значение, по умолчанию 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.22.0/generated/pandas.read_csv.html