正确读取json文件
Posted
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了正确读取json文件相关的知识,希望对你有一定的参考价值。
该语句读取json文件。但它没有正确拆分列。
df = pd.read_json('https://s3.amazonaws.com/todel162/config1.json',orient ='index')
有没有办法用pandas dataframe读取json?
答案
你可以使用json.json_normalize
:
import json
from pandas.io.json import json_normalize
with open('config1.json') as f:
data = json.load(f)
df = json_normalize(data, 'configurationItems', ['fileVersion'])
print (df)
ARN awsAccountId awsRegion
0 arn:aws:cloudtrail:us-east-1:513469704633:trai... 513469704633 us-east-1
1 arn:aws:cloudtrail:us-east-1:513469704633:trai... 513469704633 us-east-1
configurationItemCaptureTime configurationItemStatus
0 2018-07-27T11:52:53.795Z ResourceDeleted
1 2018-07-27T11:52:53.791Z ResourceDeleted
configurationItemVersion configurationStateId configurationStateMd5Hash
0 1.3 1532692373795
1 1.3 1532692373791
relatedEvents relationships resourceId
0 [] [] AWSMacieTrail-DO-NOT-EDIT
1 [] [] test01
resourceType supplementaryConfiguration tags fileVersion
0 AWS::CloudTrail::Trail {} {} 1.0
1 AWS::CloudTrail::Trail {} {} 1.0
另一答案
你可以试试这个。
import json
import urllib.request as req
import pandas as pd
with req.urlopen("https://s3.amazonaws.com/todel162/config1.json") as j:
raw = json.loads(j.read().decode())
df = pd.DataFrame(raw["configurationItems"])
df["fileVersion"] = raw["fileVersion"]
print(df)
以上是关于正确读取json文件的主要内容,如果未能解决你的问题,请参考以下文章
在 Swift 中从 json 文件中读取数据的正确方法是啥?
在 Pyspark 代码中读取嵌套的 Json 文件。 pyspark.sql.utils.AnalysisException: