我有一個看起來像這樣的 json 物件:
{
"2022-06-05":{
"revenue":"287.05",
"returns_amount":"0.00",
"date":"2022-06-05"
},
"2022-06-06":{
"revenue":"229.76",
"returns_amount":"0.00",
"date":"2022-06-06"
},
"2022-06-07":{
"revenue":"0.00",
"returns_amount":"0.00",
"date":"2022-06-07"
}
}
是否可以提取所有日期(鍵)及其各自的“收入”值并將它們放入如下所示的資料框中:
date revenue
2022-06-05 287.05
2022-06-06 229.76
2022-06-07 0.00
uj5u.com熱心網友回復:
您可以使用read_json讀取 json 字串,然后洗掉索引日期值和returns_amount列。假設 json 在jstr:
pd.read_json(jstr, orient='index').reset_index(drop=True).drop('returns_amount',axis=1)
輸出:
revenue date
0 287.05 2022-06-05
1 229.76 2022-06-06
2 0.00 2022-06-07
或者,將 json 轉換為字典,然后對其進行過濾以制作資料框:
dic = json.loads(jstr)
pd.DataFrame([ { 'date' : d['date'], 'revenue': d['revenue'] } for d in dic.values() ])
輸出:
date revenue
0 2022-06-05 287.05
1 2022-06-06 229.76
2 2022-06-07 0.00
uj5u.com熱心網友回復:
怎么樣:
import pandas as pd
import json
data = [] # list to hold data
file_name = "file.json" # JSON file
with open(file_name) as f:
doc = json.load(f)
for key in doc:
data.append(doc[key]) # just need object, not outer date "key"
df = pd.DataFrame(data=data, columns=["date", "revenue"])
print(df)
轉載請註明出處,本文鏈接:https://www.uj5u.com/qiye/488121.html
上一篇:將串列更改為字典中的資料框
