Как преобразовать файл JSON в Pandas DataFrame


Иногда вам может понадобиться преобразовать файл JSON в кадр данных pandas. К счастью, это легко сделать с помощью функции pandas read_json() , которая использует следующий синтаксис:

read_json('путь', ориентация='индекс')

куда:

  • path: путь к вашему файлу JSON.
  • ориентация: ориентация файла JSON. По умолчанию используется «индекс», но вместо этого вы можете указать «разделение», «записи», «столбцы» или «значения».

В следующих примерах показано, как использовать эту функцию для различных строк JSON.

Пример 1: преобразование файла JSON в формат «записей»

Предположим, у нас есть файл JSON с именем my_file.json в следующем формате:

[
{
 "points": 25,
 "assists": 5
 },
 {
 "points": 12,
 "assists": 7
 },
 {
 "points": 15,
 "assists": 7
 },
 {
 "points": 19,
 "assists": 12
 }
] 

Мы можем загрузить этот файл JSON в DataFrame pandas, просто указав путь к нему вместе с orient='records ' следующим образом:

#load JSON file into pandas DataFrame
df = pd.read_json('C:/Users/Zach/Desktop/json_file.json', orient='records')

#view DataFrame
df

 assists points
0 5 25
1 7 12
2 7 15
3 12 19

Пример 2: преобразование файла JSON в формат «индекс»

Предположим, у нас есть файл JSON с именем my_file.json в следующем формате:

{
 "0": {
 "points": 25,
 "assists": 5
 },
 "1": {
 "points": 12,
 "assists": 7
 },
 "2": {
 "points": 15,
 "assists": 7
 },
 "3": {
 "points": 19,
 "assists": 12
 }
} 

Мы можем загрузить этот файл JSON в кадр данных pandas, просто указав путь к нему вместе с orient='index ' следующим образом:

#load JSON file into pandas DataFrame
df = pd.read_json('C:/Users/Zach/Desktop/json_file.json', orient='index')

#view DataFrame
df

 assists points
0 5 25
1 7 12
2 7 15
3 12 19

Пример 3: Преобразование файла JSON с форматом «Столбцы»

Предположим, у нас есть файл JSON с именем my_file.json в следующем формате:

{
 "points": {
 "0": 25,
 "1": 12,
 "2": 15,
 "3": 19
 },
 "assists": {
 "0": 5,
 "1": 7,
 "2": 7,
 "3": 12
 }
} 

Мы можем загрузить этот файл JSON в DataFrame pandas, просто указав путь к нему вместе с orient='columns ' следующим образом:

#load JSON file into pandas DataFrame
df = pd.read_json('C:/Users/Zach/Desktop/json_file.json', orient='columns')

#view DataFrame
df

 assists points
0 5 25
1 7 12
2 7 15
3 12 19

Пример 4: Преобразование файла JSON в формате «Значения»

Предположим, у нас есть файл JSON с именем my_file.json в следующем формате:

[
 [
 25,
 5
 ],
 [
 12,
 7
 ],
 [
 15,
 7
 ],
 [
 19,
 12
 ]
] 

Мы можем загрузить этот файл JSON в кадр данных pandas, просто указав путь к нему вместе с orient='values ' следующим образом:

#load JSON file into pandas DataFrame
df = pd.read_json('C:/Users/Zach/Desktop/json_file.json', orient='values')

#view DataFrame
df

 0 1
0 25 5
1 12 7
2 15 7
3 19 12
3 12 19

Вы можете найти полную документацию по функции read_json() здесь .

Дополнительные ресурсы

Как читать файлы Excel с помощью Pandas
Как читать файлы CSV с помощью Pandas