【发布时间】:2021-06-23 21:31:04
【问题描述】:
"cities":[69 items
0:{10 items
"name":"Autauga"
"date":"2021-06-22"
"fips":1001
"lat":"32.53952745"
"long":"-86.64408227"
"confirmed":7242
"deaths":113
"confirmed_diff":0
"deaths_diff":0
"last_update":"2021-06-23 04:21:46"
}
1:{...}10 items
2:{...}10 items
3:{...}10 items
4:{...}10 items
5:{...}10 items
这是我的响应 JSON,带有城市标签,这是一个字典列表,这是我的代码
url = "https://covid-19-statistics.p.rapidapi.com/reports"
querystring = {"date":"2020-04-16","q":"US Alabama","region_name":"US","iso":"USA"}
#querystring = {"date":date,"iso":iso_code}
reports_response = requests.request("GET", url, headers=headers, params=querystring)
reports_resp = json.loads(reports_response.text)
#print(reports_resp['data'])
data_tuples=list(zip(reports_resp['data']))
df = pd.DataFrame(data_tuples,columns=['totals'])
df = pd.concat([df['totals'].apply(pd.Series), df.drop('totals', axis = 1)], axis = 1)
df = pd.concat([df['region'].apply(pd.Series), df.drop('region', axis = 1)], axis = 1)
df = pd.concat([df['cities'].apply(pd.Series), df.drop('cities', axis = 1)], axis = 1)
df = pd.concat([df[0].apply(pd.Series), df.drop(0, axis = 1)], axis = 1)
运行此代码后,我的 Dataframe 仅显示一个城市,但我的目标行为是创建与目标状态下的城市一样多的行。非常感谢任何帮助。
cities 列包含每个城市的词典列表,我想提取词典列表并为每个城市创建单独的行。
当我使用下面的代码时,我正在提取字典列表,但创建单独的列而不是行,并且它按照代码工作正常,但我想创建单独的行任何想法。
df = pd.concat([df['cities'].apply(pd.Series), df.drop('cities', axis = 1)], axis = 1)
和
更新原始帖子,这是来自 API 的 JSON 响应
{1 item
"data":[1 item
0:{12 items
"date":"2021-06-22"
"confirmed":549013
"deaths":11311
"recovered":0
"confirmed_diff":0
"deaths_diff":0
"recovered_diff":0
"last_update":"2021-06-23 04:21:46"
"active":537702
"active_diff":0
"fatality_rate":0.0206
"region":{6 items
"iso":"USA"
"name":"US"
"province":"Alabama"
"lat":"32.3182"
"long":"-86.9023"
"cities":[69 items
0:{10 items
"name":"Autauga"
"date":"2021-06-22"
"fips":1001
"lat":"32.53952745"
"long":"-86.64408227"
"confirmed":7242
"deaths":113
"confirmed_diff":0
"deaths_diff":0
"last_update":"2021-06-23 04:21:46"
}
1:{...}10 items
2:{...}10 items
3:{...}10 items
4:{...}10 items
5:{...}10 items
6:{...}10 items
7:{...}10 items
8:{...}10 items
9:{...}10 items
10:{...}10 items
11:{...}10 items
12:{...}10 items
13:{...}10 items
14:{...}10 items
15:{...}10 items
16:{...}10 items
17:{...}10 items
18:{...}10 items
19:{...}10 items
20:{...}10 items
21:{...}10 items
22:{...}10 items
23:{...}10 items
24:{...}10 items
25:{...}10 items
26:{...}10 items
27:{...}10 items
28:{...}10 items
29:{...}10 items
30:{...}10 items
31:{...}10 items
32:{...}10 items
33:{...}10 items
34:{...}10 items
35:{...}10 items
36:{...}10 items
37:{...}10 items
38:{...}10 items
39:{...}10 items
40:{...}10 items
41:{...}10 items
42:{...}10 items
43:{...}10 items
44:{...}10 items
45:{...}10 items
46:{...}10 items
47:{...}10 items
48:{...}10 items
49:{...}10 items
50:{...}10 items
51:{...}10 items
52:{...}10 items
53:{...}10 items
54:{...}10 items
55:{...}10 items
56:{...}10 items
57:{...}10 items
58:{...}10 items
59:{...}10 items
60:{...}10 items
61:{...}10 items
62:{...}10 items
63:{...}10 items
64:{...}10 items
65:{...}10 items
66:{...}10 items
67:{...}10 items
68:{...}10 items
]
}
}
]
}
【问题讨论】:
-
您能否提供
headers变量或至少reports_resp值?谢谢。 -
我认为
headers包含 API 密钥,因此来自reports_resp的示例会很棒。 -
使用来自 API 的完整 JSON 响应更新原始帖子
标签: python pandas dataframe data-science