pandas.Series.to_json
-
Series.to_json(path_or_buf=None, orient=None, date_format=None, double_precision=10, force_ascii=True, date_unit='ms', default_handler=None, lines=False, compression=None)[source] -
Преобразование объекта в строку JSON.
Обратите внимание, что NaN и None будут преобразованы в null, а объекты datetime — в метки времени Unix.
Параметры: path_or_buf : путь или буфер для записи результирующей строки
если это None, возвращается преобразованная строка
orient : строка
-
Series
- по умолчанию ‘index’
- разрешенные значения: {‘split’,’records’,’index’}
-
DataFrame
- по умолчанию ‘columns’
- разрешенные значения: {‘split’,’records’,’index’,’columns’,’values’}
-
Формат строки JSON
- split : словарь вида {индекс -> [индекс], столбцы -> [столбцы], данные -> [значения]}
- records : список вида [{столбец -> значение}, ... , {столбец -> значение}]
- index : словарь вида {индекс -> {столбец -> значение}}
- columns : словарь вида {столбец -> {индекс -> значение}}
- values : только массив значений
-
table : словарь вида {‘схема’: {схема}, ‘данные’: {данные}}, описывающий данные, и компонент данных похож на
orient='records'.Изменено в версии 0.20.0.
date_format : {None, ‘epoch’, ‘iso’}
Тип преобразования даты.
epoch= метки времени в миллисекундах,iso= ISO8601. По умолчанию зависит отorient. Дляorient=’table’, по умолчанию‘iso’. Для всех остальных ориентаций по умолчанию‘epoch’.double_precision : количество десятичных знаков, используемых при кодировании
значений с плавающей точкой, по умолчанию 10.
force_ascii : принудительно кодировать строку в ASCII, по умолчанию True.
date_unit : строка, по умолчанию ‘ms’ (миллисекунды)
Единица времени для кодирования, управляет точностью метки времени и ISO8601. Одно из ‘s’, ‘ms’, ‘us’, ‘ns’ для секунды, миллисекунды, микросекунды и наносекунды соответственно.
default_handler : вызываемая функция, по умолчанию None
Обработчик, который вызывается, если объект не может быть преобразован в подходящий для JSON формат. Должен принять один аргумент, который является объектом для преобразования, и вернуть сериализуемый объект.
lines : булево, по умолчанию False
Если ‘orient’ равен ‘records’, записывать JSON-формат с разделителями строк. Будет выброшено исключение ValueError, если ‘orient’ неверен, так как другие не являются списками.
Добавлена в версии 0.19.0.
compression : {None, ‘gzip’, ‘bz2’, ‘xz’}
Строка, представляющая используемое сжатие в выходном файле, используется только тогда, когда первый аргумент — имя файла
Добавлена в версии 0.21.0.
Возвращает: тот же тип, что и входной объект, с отфильтрованной осью информации
См. также
pd.read_jsonПримеры
>>> df = pd.DataFrame([['a', 'b'], ['c', 'd']], ... index=['row 1', 'row 2'], ... columns=['col 1', 'col 2']) >>> df.to_json(orient='split') '{"columns":["col 1","col 2"], "index":["row 1","row 2"], "data":[["a","b"],["c","d"]]}'Кодирование/декодирование DataFrame с использованием JSON в формате
'index':>>> df.to_json(orient='index') '{"row 1":{"col 1":"a","col 2":"b"},"row 2":{"col 1":"c","col 2":"d"}}'Кодирование/декодирование DataFrame с использованием JSON в формате
'records'. Обратите внимание, что метки индекса при таком кодировании не сохраняются.>>> df.to_json(orient='records') '[{"col 1":"a","col 2":"b"},{"col 1":"c","col 2":"d"}]'Кодирование со схемой таблицы
>>> df.to_json(orient='table') '{"schema": {"fields": [{"name": "index", "type": "string"}, {"name": "col 1", "type": "string"}, {"name": "col 2", "type": "string"}], "primaryKey": "index", "pandas_version": "0.20.0"}, "data": [{"index": "row 1", "col 1": "a", "col 2": "b"}, {"index": "row 2", "col 1": "c", "col 2": "d"}]}' -
© 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.21.1/generated/pandas.Series.to_json.html