Как создать фрейм данных Pandas из вложенных объектов JSON [закрыто]Python

Программы на Python
Ответить
Anonymous
 Как создать фрейм данных Pandas из вложенных объектов JSON [закрыто]

Сообщение Anonymous »

Я пытаюсь создать DataFrame Pandas из файла JSON, который выглядит следующим образом:

Код: Выделить всё

{
"GameID": "1,218,463,841",
"Date - Start": "1761097369",
"Date - End": "1761098306",
"TagSetID": 79,
"Netplay": 1,
"StadiumID": 5,
"Away Player": "margoose",
"Home Player": "dev",
"Away Score": 0,
"Home Score": 2,
"Innings Selected": 5,
"Innings Played": 5,
"Quitter Team": 255,
"Average Ping": 18,
"Lag Spikes": 8,
"Version": "2.1.1",
"Character Game Stats": {
"Away Roster 0": {
"Team": "0",
"RosterID": 0,
"CharID": 15,
"Superstar": 0,
"Captain": 0,
"Fielding Hand": 0,
"Batting Hand": 0,
"Defensive Stats": {
"Batters Faced": 0,
"Runs Allowed": 0,
"Earned Runs": 0,
"Batters Walked": 0,
"Batters Hit": 0,
"Hits Allowed": 0,
"HRs Allowed": 0,
"Pitches Thrown": 0,
"Stamina": 10,
"Was Pitcher": 0,
"Strikeouts": 0,
"Star Pitches Thrown": 0,
"Big Plays": 0,
"Outs Pitched": 0,
"Batters Per Position": [
{
"CF": 3,
"RF": 15
}
],
"Batter Outs Per Position": [
{
"CF": 2,
"RF": 10
}
],
"Outs Per Position": [
{
"RF": 1
}
]
},
"Offensive Stats": {
"At Bats": 3,
"Hits": 2,
"Singles": 2,
"Doubles": 0,
"Triples": 0,
"Homeruns": 0,
"Successful Bunts": 0,
"Sac Flys": 0,
"Strikeouts": 0,
"Walks (4 Balls)": 0,
"Walks (Hit)": 0,
"RBI": 0,
"Bases Stolen": 0,
"Star Hits": 0
}
},
"Away Roster 1": {
"Team": "0",
"RosterID": 1,
"CharID": 6,
"Superstar": 0,
"Captain": 0,
"Fielding Hand": 0,
"Batting Hand": 1,
"Defensive Stats": {
"Batters Faced": 0,
"Runs Allowed": 0,
"Earned Runs": 0,
"Batters Walked": 0,
"Batters Hit": 0,
"Hits Allowed": 0,
"HRs Allowed": 0,
"Pitches Thrown": 0,
"Stamina": 10,
"Was Pitcher": 0,
"Strikeouts": 0,
"Star Pitches Thrown": 0,
"Big Plays": 0,
"Outs Pitched": 0,
"Batters Per Position": [
{
"SS": 18
}
],
"Batter Outs Per Position": [
{
"SS": 12
}
],
"Outs Per Position": [
]
},
"Offensive Stats": {
"At Bats": 3,
"Hits": 0,
"Singles": 0,
"Doubles": 0,
"Triples": 0,
"Homeruns": 0,
"Successful Bunts": 0,
"Sac Flys": 0,
"Strikeouts": 1,
"Walks (4 Balls)": 0,
"Walks (Hit)": 0,
"RBI": 0,
"Bases Stolen": 0,
"Star Hits": 0
}
},
"Away Roster 2": {
"Team": "0",
"RosterID": 2,
"CharID": 20,
"Superstar":  0,
"Captain": 0,
"Fielding Hand": 0,
"Batting Hand": 1,
"Defensive Stats": {
"Batters Faced": 0,
"Runs Allowed": 0,
"Earned Runs": 0,
"Batters Walked": 0,
"Batters Hit": 0,
"Hits Allowed": 0,
"HRs Allowed": 0,
"Pitches Thrown": 0,
"Stamina": 10,
"Was Pitcher": 0,
"Strikeouts": 0,
"Star Pitches Thrown": 0,
"Big Plays": 0,
"Outs Pitched": 0,
"Batters Per Position": [
{
"3B": 18
}
],
"Batter Outs Per Position": [
{
"3B": 12
}
],
"Outs Per Position": [
{
"3B": 2
}
]
},
"Offensive Stats": {
"At Bats": 3,
"Hits": 0,
"Singles": 0,
"Doubles": 0,
"Triples": 0,
"Homeruns": 0,
"Successful Bunts": 0,
"Sac Flys": 0,
"Strikeouts": 1,
"Walks (4 Balls)": 0,
"Walks (Hit)": 0,
"RBI": 0,
"Bases Stolen": 0,
"Star Hits": 0
}
}
}
}
Мне бы хотелось, чтобы результирующая таблица выглядела примерно так, но я не могу понять, как:

Код: Выделить всё

  CharID Batters Faced Innings Pitched At Bats
0 15     0             0               3
Любая помощь очень ценится. Я совершенно незнаком с JSON. Я попытался использовать «CharID» и «Защитную статистику» в качестве пути к записи, но получил ошибку:

Если указать путь к записи, все элементы данных должны иметь этот путь.


Подробнее здесь: https://stackoverflow.com/questions/798 ... ed-objects
Ответить

Быстрый ответ

Изменение регистра текста: 
Смайлики
:) :( :oops: :roll: :wink: :muza: :clever: :sorry: :angel: :read: *x)
Ещё смайлики…
   
К этому ответу прикреплено по крайней мере одно вложение.

Если вы не хотите добавлять вложения, оставьте поля пустыми.

Максимально разрешённый размер вложения: 15 МБ.

Вернуться в «Python»