我有一個 JSON 檔案,我想將其轉換為有用的檔案,pd.DataFrame以便我可以將其用于進一步建模。JSON 檔案如下所示:
json_file = {
"x1": [
{
"a": "XZ12ABC1834",
"b": "J. Doe",
"c": [
{
"Amount": -50,
"Date": "2021-08-15T10:00:00.000Z",
"CategoryId": "abc123",
"CounterParty": "The Farm",
"Description": "some description",
"Counter": "XYZ456AZ",
"Type": "bc"
},{
"Amount": -1,
"Date": "2020-08-15T10:00:00.000Z",
"CategoryId": "cde123",
"CounterParty": "The pool",
"Description": "some other description",
"Counter": "WYZ12",
"Type": "X"
}
]
"a": "XX34XX872",
"b": "J. Doe",
"c": [
{
"Amount": -1,50,
"Date": "2019-05-15T10:00:00.000Z",
"CategoryId": "QWR627",
"CounterParty": "The City",
"Description": "last other description",
"Counter": "QWE123",
"Type": "S"
}
]
}
]
}
我想把這個 JSON 檔案轉換成一個看起來像這樣的資料框:
| 變數1 | 一種 | 乙 | 數量 | 日期 | 類別編號 | 交易對手 | 描述 | 柜臺 | 型別 |
|---|---|---|---|---|---|---|---|---|---|
| x1 | XZ12ABC1834 | J·多伊 | -50 | 2021-08-15T10:00:00.000Z | abc123 | 農場 | 一些描述 | XYZ456AZ | bv |
| x1 | XZ12ABC1834 | J·多伊 | -1 | 2020-08-15T10:00:00.000Z | cde123 | 游泳池 | 其他一些描述 | WYZZ12 | X |
| x1 | XX34XX872 | J·多伊 | -1.50 | 2019-05-15T10:00:00.000Z | cde123 | 城市 | 最后的其他描述 | QWE123 | 秒 |
希望這是足夠的資訊,有人可以幫助我解決這個問題。
uj5u.com熱心網友回復:
我認為這樣的事情應該有效:
import pandas as pd
result = []
for key in json_file:
df_nested_list = pd.json_normalize(
json_file[key],
record_path =['c'],
meta=['a', 'b']
)
df_nested_list['var1'] = key
result.append(df_nested_list)
pd.concat(result)
有關更多資訊,請查看:https : //towardsdatascience.com/how-to-convert-json-into-a-pandas-dataframe-100b2ae1e0d8
轉載請註明出處,本文鏈接:https://www.uj5u.com/ruanti/359696.html
