[英]How to combine this list/dict in one dataframe in Python
我是 python 和 pandas 數據框的新手,我有這個列表/字典輸出,我需要將它組合到一個數據框中。 我無法將其合並到一個數據框中並將其保存到一個 csv 中。
data = [{"TimePeriod_Start":"2022-10-01","TimePeriod_End":"2022-10-02","PLATFORM":"TEST1","A":"0.30001","B":"0.0002","C":"0.00003","D":"0.000047","D":"0.0003","E":"0.00006"}][{"TimePeriod_Start":"2022-10-01","TimePeriod_End":"2022-10-02","PLATFORM":"TEST2","C":"0.700003","D":"00001","D":"00005","E":"00005","F":"0.000008","G":"000.245","H":"1.111258","I":"0000.1236"}]
這應該工作
import pandas as pd
data = [
{
"TimePeriod_Start": "2022-10-01",
"TimePeriod_End": "2022-10-02",
"PLATFORM": "TEST1",
"A": "0.30001",
"B": "0.0002",
"C": "0.00003",
"D": "0.0003",
"E": "0.00006",
}
]
data2 = [
{
"TimePeriod_Start": "2022-10-01",
"TimePeriod_End": "2022-10-02",
"PLATFORM": "TEST2",
"C": "0.700003",
"D": "00005",
"E": "00005",
"F": "0.000008",
"G": "000.245",
"H": "1.111258",
"I": "0000.1236",
}
]
d = data+data2
df = pd.DataFrame.from_records(d).to_csv("filePath")
或者干脆
pd.DataFrame(data + data2)
a = [{"TimePeriod_Start":"2022-10-01","TimePeriod_End":"2022-10-02","PLATFORM":"TEST1","A":"0.30001","B":"0.0002","C":"0.00003","D":"0.000047","D":"0.0003","E":"0.00006"}]
b = [{"TimePeriod_Start":"2022-10-01","TimePeriod_End":"2022-10-02","PLATFORM":"TEST2","C":"0.700003","D":"00001","D":"00005","E":"00005","F":"0.000008","G":"000.245","H":"1.111258","I":"0000.1236"}]
我不確定您想要與哪個數據框結合使用。 這是你想要的嗎?
pd.DataFrame(a + b)
TimePeriod_Start TimePeriod_End PLATFORM A B C D E F G H I
0 2022-10-01 2022-10-02 TEST1 0.30001 0.0002 0.00003 0.0003 0.00006 NaN NaN NaN NaN
1 2022-10-01 2022-10-02 TEST2 NaN NaN 0.700003 00005 00005 0.000008 000.245 1.111258 0000.1236
缺少方括號和逗號。 真正的格式必須是這樣的:
data = [[{"TimePeriod_Start":"2022-10-01","TimePeriod_End":"2022-10-02","PLATFORM":"TEST1","A":"0.30001","B":"0.0002","C":"0.00003","D":"0.000047","D":"0.0003","E":"0.00006"}],[{"TimePeriod_Start":"2022-10-01","TimePeriod_End":"2022-10-02","PLATFORM":"TEST2","C":"0.700003","D":"00001","D":"00005","E":"00005","F":"0.000008","G":"000.245","H":"1.111258","I":"0000.1236"}]]
df = pd.json_normalize(data)[0].apply(pd.Series)
'''
| | TimePeriod_Start | TimePeriod_End | PLATFORM | A | B | C | D | E | F | G | H | I |
|---:|:-------------------|:-----------------|:-----------|----------:|---------:|---------:|-------:|------:|--------:|--------:|----------:|---------:|
| 0 | 2022-10-01 | 2022-10-02 | TEST1 | 0.30001 | 0.0002 | 3e-05 | 0.0003 | 6e-05 | nan | nan | nan | nan |
| 1 | 2022-10-01 | 2022-10-02 | TEST2 | nan | nan | 0.700003 | 5 | 5 | 8e-06 | 0.245 | 1.11126 | 0.1236 |
'''
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.