Метод to_json
Метод to_json применяется к DataFrame
и экспортирует табличные данные в формат JSON.
Первым параметром можно передать путь к файлу для сохранения.
Если параметр не указан, метод возвращает строку JSON.
Вторым параметром orient задаётся структура
результирующего JSON-объекта.
Синтаксис
df.to_json([path_or_buf], orient='index')
Пример
Давайте экспортируем таблицу в JSON со стандартной ориентацией index:
import pandas as pd
df = pd.DataFrame({
'a': [1, 2, 3],
'b': [10, 20, 30]
})
res = df.to_json(orient='index')
print(res)
Результат выполнения кода:
{"0":{"a":1,"b":10},"1":{"a":2,"b":20},"2":{"a":3,"b":30}}
Пример
Используем ориентацию records для получения списка объектов:
import pandas as pd
df = pd.DataFrame({
'a': [1, 2, 3],
'b': [10, 20, 30]
})
res = df.to_json(orient='records')
print(res)
Результат выполнения кода:
[{"a":1,"b":10},{"a":2,"b":20},{"a":3,"b":30}]
Пример
Сохраним JSON в файл с именем data.json:
import pandas as pd
df = pd.DataFrame({
'a': [1, 2, 3],
'b': [10, 20, 30]
})
df.to_json('data.json', orient='records')
В результате в текущей директории будет создан файл с содержимым:
[{"a":1,"b":10},{"a":2,"b":20},{"a":3,"b":30}]
Пример
Ориентация split разделяет данные, индексы и столбцы:
import pandas as pd
df = pd.DataFrame({
'a': [1, 2, 3],
'b': [10, 20, 30]
})
res = df.to_json(orient='split')
print(res)
Результат выполнения кода:
{"columns":["a","b"],"index":[0,1,2],"data":[[1,10],[2,20],[3,30]]}
Пример
Для компактного вывода используем параметр indent:
import pandas as pd
df = pd.DataFrame({
'a': [1, 2, 3],
'b': [10, 20, 30]
})
res = df.to_json(orient='records', indent=2)
print(res)
Результат выполнения кода:
[
{
"a": 1,
"b": 10
},
{
"a": 2,
"b": 20
},
{
"a": 3,
"b": 30
}
]