pandas.Series.to_csv#
- Series.to_csv(path_or_buf=None, *, sep=',', na_rep='', float_format=None, столбцы=None, header=True, index=True, index_label=None, mode='w', кодировка=None, compression='infer', quoting=None, quotechar='"', lineterminator=None, chunksize=None, date_format=None, двойные кавычки=True, escapechar=None, десятичный='.', ошибки='strict', storage_options=None)[источник]#
Запись объекта в файл значений, разделенных запятыми (csv).
- Параметры:
- path_or_bufstr, объект пути, файлоподобный объект или None, по умолчанию None
Строка, объект пути (реализующий os.PathLike[str]) или файлоподобный объект, реализующий функцию write(). Если None, результат возвращается как строка. Если передан небинарный файловый объект, он должен быть открыт с newline='', отключая универсальные переводы строк. Если передан объект двоичного файла, mode может потребоваться содержать 'b'.
- sepstr, по умолчанию ','
Строка длиной 1. Разделитель полей для выходного файла.
- na_repstr, по умолчанию ‘’
Представление отсутствующих данных.
- float_formatstr, Callable, по умолчанию None
Строка формата для чисел с плавающей точкой. Если задан Callable, он имеет приоритет над другими параметрами форматирования чисел, такими как decimal.
- столбцыsequence, optional
Столбцы для записи.
- headerbool или список строк, по умолчанию True
Записать названия столбцов. Если задан список строк, он считается псевдонимами для названий столбцов.
- indexbool, по умолчанию True
Записать имена строк (индекс).
- index_labelstr или последовательность, или False, по умолчанию None
Метка столбца для столбца(ов) индекса, если требуется. Если задано None, и header и index равны True, то используются имена индексов. Последовательность должна быть задана, если объект использует MultiIndex. Если False, не выводить поля для имен индексов. Используйте index_label=False для более простого импорта в R.
- mode{‘w’, ‘x’, ‘a’}, по умолчанию ‘w’
Перенаправлено либо в open(mode=) или fsspec.open(mode=) для управления открытием файла. Типичные значения включают:
‘w’, сначала обрезать файл.
‘x’, эксклюзивное создание, с ошибкой, если файл уже существует.
'a', добавить в конец файла, если он существует.
- кодировкаstr, optional
Строка, представляющая кодировку для использования в выходном файле, по умолчанию 'utf-8'. кодировка не поддерживается, если path_or_buf является небинарным файловым объектом.
- compressionстрока или словарь, по умолчанию ‘infer’
Для сжатия выходных данных на лету. Если 'infer' и 'path_or_buf' является путем, то определить сжатие по следующим расширениям: '.gz', '.bz2', '.zip', '.xz', '.zst', '.tar', '.tar.gz', '.tar.xz' или '.tar.bz2' (в противном случае без сжатия). Установить в
Noneбез сжатия. Также может быть словарем с ключом'method'установить в одно из {'zip','gzip','bz2','zstd','xz','tar'} и другие пары ключ-значение передаются вzipfile.ZipFile,gzip.GzipFile,bz2.BZ2File,zstandard.ZstdCompressor,lzma.LZMAFileилиtarfile.TarFile, соответственно. Например, для ускорения сжатия и создания воспроизводимого gzip-архива можно передать:compression={'method': 'gzip', 'compresslevel': 1, 'mtime': 1}.Добавлено в версии 1.5.0: Добавлена поддержка для .tar файлы.
Может быть словарем с ключом 'method' как режим сжатия и другими записями как дополнительные параметры сжатия, если режим сжатия 'zip'.
Передача параметров сжатия в виде ключей в словаре поддерживается для режимов сжатия ‘gzip’, ‘bz2’, ‘zstd’ и ‘zip’.
- quotingопциональная константа из модуля csv
По умолчанию csv.QUOTE_MINIMAL. Если вы установили float_format тогда числа с плавающей точкой преобразуются в строки, и поэтому csv.QUOTE_NONNUMERIC будет рассматривать их как нечисловые.
- quotecharstr, по умолчанию '"'
Строка длиной 1. Символ, используемый для цитирования полей.
- lineterminatorstr, optional
Символ или последовательность символов новой строки для использования в выходном файле. По умолчанию os.linesep, который зависит от ОС, в которой вызывается этот метод ('\n' для Linux, '\r\n' для Windows).
Изменено в версии 1.5.0: Ранее был line_terminator, изменено для согласованности с read_csv и стандартной библиотекой 'csv' модуля.
- chunksizeint или None
Строк для записи за один раз.
- date_formatstr, по умолчанию None
Строка формата для объектов datetime.
- двойные кавычкиbool, по умолчанию True
Управление кавычками quotechar внутри поля.
- escapecharstr, по умолчанию None
Строка длиной 1. Символ, используемый для экранирования sep и quotechar когда это уместно.
- десятичныйstr, default ‘.’
Символ, распознаваемый как десятичный разделитель. Например, используйте ',' для европейских данных.
- ошибкиstr, по умолчанию 'strict'
Определяет, как обрабатывать ошибки кодирования и декодирования. См. аргумент errors для
open()для полного списка опций.- storage_optionsdict, optional
Дополнительные параметры, которые имеют смысл для конкретного соединения с хранилищем, например, хост, порт, имя пользователя, пароль и т.д. Для HTTP(S) URL пары ключ-значение передаются в
urllib.request.Requestв качестве параметров заголовка. Для других URL-адресов (например, начинающихся с "s3://" и "gcs://") пары ключ-значение передаютсяfsspec.open. Пожалуйста, смотритеfsspecиurllibдля получения дополнительной информации, а для дополнительных примеров по опциям хранения см. здесь.
- Возвращает:
- None или str
Если path_or_buf равен None, возвращает результирующий csv-формат в виде строки. В противном случае возвращает None.
Примеры
Создать 'out.csv', содержащий 'df' без индексов
>>> df = pd.DataFrame({'name': ['Raphael', 'Donatello'], ... 'mask': ['red', 'purple'], ... 'weapon': ['sai', 'bo staff']}) >>> df.to_csv('out.csv', index=False)
Создать 'out.zip', содержащий 'out.csv'
>>> df.to_csv(index=False) 'name,mask,weapon\nRaphael,red,sai\nDonatello,purple,bo staff\n' >>> compression_opts = dict(method='zip', ... archive_name='out.csv') >>> df.to_csv('out.zip', index=False, ... compression=compression_opts)
Чтобы записать csv файл в новую папку или вложенную папку, сначала нужно создать её с помощью Pathlib или os:
>>> from pathlib import Path >>> filepath = Path('folder/subfolder/out.csv') >>> filepath.parent.mkdir(parents=True, exist_ok=True) >>> df.to_csv(filepath)
>>> import os >>> os.makedirs('folder/subfolder', exist_ok=True) >>> df.to_csv('folder/subfolder/out.csv')