【发布时间】:2019-03-20 15:31:48
【问题描述】:
我有一个 json 文件,其中包含比赛分钟的进球记录。 我尝试使用以下代码将其展平:
data_Loc ='Season Fixtures.json'
with open(data_Loc) as data_file:
d= json.load(data_file)
df_Fixtures = pd.io.json.json_normalize(d,'matches')
输出如下:
然后我使用以下方法将目标转换为系列:
df_goal = df_Fixtures.goals.apply(pd.Series)
输出如下:
它在列中包含另一个字典。
如何将目标列直接转换为期间?
输入数据文件可从here下载
谁能告诉我如何展平到目标列的最后一部分? 这意味着目标列将转换为多个列,例如 Period、minutes、playerId、TeamId、Type。
为了包含 matchId,我创建了一个新的数据框,如下所示,并与 Jez 建议的之前的数据框组合如下:
df_MatchID = pd.io.json.json_normalize(d,'matches')
df_MatchID = df_MatchID[['matchId']]
df_Fixtures_details = pd.concat([df_MatchID,df_Fixtures],axis =1)
谢谢 泽普
【问题讨论】:
标签: python json pandas parsing