Saya memiliki DataFrame berikut: TradeDictionary 0 {'id': '545', 'instrument': 'EUR_USD', 'price'... 1 {'id': '539', 'instrument': 'GBP_USD', ' harga'... 2 {'id': '535', 'instrument': 'EUR_USD'...

0
Tim Pickup 5 April 2021, 22:15

1 menjawab

Jawaban Terbaik

Gunakan pd.Series di df.apply:

In [1426]: df = pd.DataFrame({'TradeDictionary':[{'id': '545', 'instrument': 'EUR_USD', 'price':100}, {'id': '539', 'instrument': 'GBP_USD', 'price':200}, {'id': '535', 'instrument': 'EUR_USD', 'price':50}]})

In [1427]: df
Out[1427]: 
                                     TradeDictionary
0  {'id': '545', 'instrument': 'EUR_USD', 'price'...
1  {'id': '539', 'instrument': 'GBP_USD', 'price'...
2  {'id': '535', 'instrument': 'EUR_USD', 'price'...

In [1429]: df1 = df.TradeDictionary.apply(pd.Series)

In [1430]: df1
Out[1430]: 
    id instrument  price
0  545    EUR_USD    100
1  539    GBP_USD    200
2  535    EUR_USD     50

ATAU untuk kinerja yang lebih baik, gunakan pd.json_normalize:

In [1432]: df1 = pd.json_normalize(df.TradeDictionary)
1
Mayank Porwal 5 April 2021, 19:18