Normalize JSON for Single Level Children
Clash Royale CLAN TAG#URR8PPP
.everyoneloves__top-leaderboard:empty,.everyoneloves__mid-leaderboard:empty margin-bottom:0;
up vote
0
down vote
favorite
The goal here is to normalize or flatten JSON:
[
"parent_key":
"child_key_1": "child_value_1",
"child_key_2": "child_value_2"
]
To this in a dataframe:
parent_key_child_key_1: child_value_1
parent_key_child_key_2: child_value_2
Children that are lists should be passed as lists.
Children that are dicts should be passed without modification.
This is my code right now:
from pandas.io.json import json_normalize
with open(INPUT_FILE_NAME) as f:
raw_data = json.load(f)
data = json_normalize(raw_data, sep='_')
# Reinsert list fields as lists
for key, value in raw_data.items():
if type(value) == list:
data[key] = str(raw_data[key])
I then ignore the columns that pandas created from lists. Pandas flattens lists to parent_key_index_number_child_key
Is there a better way to do this?
json pandas
add a comment |Â
up vote
0
down vote
favorite
The goal here is to normalize or flatten JSON:
[
"parent_key":
"child_key_1": "child_value_1",
"child_key_2": "child_value_2"
]
To this in a dataframe:
parent_key_child_key_1: child_value_1
parent_key_child_key_2: child_value_2
Children that are lists should be passed as lists.
Children that are dicts should be passed without modification.
This is my code right now:
from pandas.io.json import json_normalize
with open(INPUT_FILE_NAME) as f:
raw_data = json.load(f)
data = json_normalize(raw_data, sep='_')
# Reinsert list fields as lists
for key, value in raw_data.items():
if type(value) == list:
data[key] = str(raw_data[key])
I then ignore the columns that pandas created from lists. Pandas flattens lists to parent_key_index_number_child_key
Is there a better way to do this?
json pandas
jq . file.json
see: man jq
â Martin York
May 10 at 21:10
add a comment |Â
up vote
0
down vote
favorite
up vote
0
down vote
favorite
The goal here is to normalize or flatten JSON:
[
"parent_key":
"child_key_1": "child_value_1",
"child_key_2": "child_value_2"
]
To this in a dataframe:
parent_key_child_key_1: child_value_1
parent_key_child_key_2: child_value_2
Children that are lists should be passed as lists.
Children that are dicts should be passed without modification.
This is my code right now:
from pandas.io.json import json_normalize
with open(INPUT_FILE_NAME) as f:
raw_data = json.load(f)
data = json_normalize(raw_data, sep='_')
# Reinsert list fields as lists
for key, value in raw_data.items():
if type(value) == list:
data[key] = str(raw_data[key])
I then ignore the columns that pandas created from lists. Pandas flattens lists to parent_key_index_number_child_key
Is there a better way to do this?
json pandas
The goal here is to normalize or flatten JSON:
[
"parent_key":
"child_key_1": "child_value_1",
"child_key_2": "child_value_2"
]
To this in a dataframe:
parent_key_child_key_1: child_value_1
parent_key_child_key_2: child_value_2
Children that are lists should be passed as lists.
Children that are dicts should be passed without modification.
This is my code right now:
from pandas.io.json import json_normalize
with open(INPUT_FILE_NAME) as f:
raw_data = json.load(f)
data = json_normalize(raw_data, sep='_')
# Reinsert list fields as lists
for key, value in raw_data.items():
if type(value) == list:
data[key] = str(raw_data[key])
I then ignore the columns that pandas created from lists. Pandas flattens lists to parent_key_index_number_child_key
Is there a better way to do this?
json pandas
asked May 10 at 20:45
ProGirlXOXO
1091
1091
jq . file.json
see: man jq
â Martin York
May 10 at 21:10
add a comment |Â
jq . file.json
see: man jq
â Martin York
May 10 at 21:10
jq . file.json
see: man jqâ Martin York
May 10 at 21:10
jq . file.json
see: man jqâ Martin York
May 10 at 21:10
add a comment |Â
active
oldest
votes
active
oldest
votes
active
oldest
votes
active
oldest
votes
active
oldest
votes
Sign up or log in
StackExchange.ready(function ()
StackExchange.helpers.onClickDraftSave('#login-link');
);
Sign up using Google
Sign up using Facebook
Sign up using Email and Password
Post as a guest
StackExchange.ready(
function ()
StackExchange.openid.initPostLogin('.new-post-login', 'https%3a%2f%2fcodereview.stackexchange.com%2fquestions%2f194143%2fnormalize-json-for-single-level-children%23new-answer', 'question_page');
);
Post as a guest
Sign up or log in
StackExchange.ready(function ()
StackExchange.helpers.onClickDraftSave('#login-link');
);
Sign up using Google
Sign up using Facebook
Sign up using Email and Password
Post as a guest
Sign up or log in
StackExchange.ready(function ()
StackExchange.helpers.onClickDraftSave('#login-link');
);
Sign up using Google
Sign up using Facebook
Sign up using Email and Password
Post as a guest
Sign up or log in
StackExchange.ready(function ()
StackExchange.helpers.onClickDraftSave('#login-link');
);
Sign up using Google
Sign up using Facebook
Sign up using Email and Password
Sign up using Google
Sign up using Facebook
Sign up using Email and Password
jq . file.json
see: man jqâ Martin York
May 10 at 21:10