[英]Converting the Nested Json format/ file into Flat files using Pandas Dataframe
我在這里面臨一個問題。 我有嵌套的數據集
{
"members": [
{
"firstname": "John",
"lastname": "Doe",
"orgname": "Anon",
"phone": "916-555-1234",
"mobile": "",
},
{
"firstname": "Jane",
"lastname": "Doe",
"orgname": "Anon",
"phone": "916-555-4321",
"mobile": "916-555-7890",
},
"teamname": "1",
"team_size": "5",
"team_status": "low"
}
另一個不嵌套
{
"members": [
{
"firstname": "John",
"lastname": "Doe",
"orgname": "Anon",
"phone": "916-555-1234",
"mobile": "",
},
"teamname": "1",
"team_size": "5",
"team_status": "low"
}
我已經通過代碼處理了嵌套
df2 = pd.DataFrame.from_dict(json_normalize(json_file2),orient ='columns')
我收到錯誤消息,說“說“ TypeError:'float'對象不可下標””
您能幫我解決這個問題嗎?
{
"teams": [
{
"members": [
{
"firstname": "John",
"lastname": "Doe",
"orgname": "Anon",
"phone": "916-555-1234",
"mobile": "",
},
{
"firstname": "Jane",
"lastname": "Doe",
"orgname": "Anon",
"phone": "916-555-4321",
"mobile": "916-555-7890",
},
"teamname": "1",
"team_size": "5",
"team_status": "low"
},
{
"members": [
{
"firstname": "Mickey",
"lastname": "Moose",
"orgname": "Moosers",
"phone": "916-555-0000",
"mobile": "916-555-1111",
},
"teamname": "2",
"team_size": "5",
"team_status": "low"
]
}
]
}
對我來說:
d1 = {
"members": [
{
"firstname": "John",
"lastname": "Doe",
"orgname": "Anon",
"phone": "916-555-1234",
"mobile": "",
},
{
"firstname": "Jane",
"lastname": "Doe",
"orgname": "Anon",
"phone": "916-555-4321",
"mobile": "916-555-7890",
}],
"teamname": "1",
"team_size": "5",
"team_status": "low"
}
d2 = {
"members": [
{
"firstname": "John",
"lastname": "Doe",
"orgname": "Anon",
"phone": "916-555-1234",
"mobile": "",
}],
"teamname": "1",
"team_size": "5",
"team_status": "low"
}
df1 = json_normalize(d1, 'members', ['team_size', 'team_status','teamname'])
print (df1)
firstname lastname mobile orgname phone team_size teamname \
0 John Doe Anon 916-555-1234 5 1
1 Jane Doe 916-555-7890 Anon 916-555-4321 5 1
team_status
0 low
1 low
df2 = json_normalize(d2, 'members', ['team_size', 'team_status','teamname'])
print (df2)
firstname lastname mobile orgname phone team_size teamname \
0 John Doe Anon 916-555-1234 5 1
team_status
0 low
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.