2016-07-24 23 views
2

Vor einigen Monaten @Romain X. hat mir sehr geholfen mit dieser Frage:Python dict Dataframe Pandas - Ebenen

Python dict to DataFrame Pandas

Jetzt bin ich versucht, das gleiche mit tieferen Ebenen zu tun, hier ist die Beispiel:

{u'instruments': [{u'instrument': u'EUR_USD', 
    u'interestRate': {u'EUR': {u'ask': 0.004, u'bid': 0}, 
    u'USD': {u'ask': 0.004, u'bid': 0}}}]} 

Spalten Beschriftungen und Werte meines Datenrahmen sollen Instrument, EUR_ask, EUR_bid, USD_ask, USD_bid sein.

Ich habe versucht, dieses:

pd.DataFrame.from_dict(df).join(pd.DataFrame. from_dict(df['instruments'])).drop('instruments', axis=1)

Dank!

+1

Also, wenn Sie etwas versucht haben, können Sie zeigen uns, was? –

+0

@Merlin. Ist klar was ich jetzt machen will? –

+1

Nein, Sie haben immer noch nicht gezeigt, was Sie versucht haben, SO ist kein Kodierungsdienst. – Merlin

Antwort

1

Hier gehen Sie,

df = pd.DataFrame.from_dict(d)\ 
.join(pd.DataFrame.from_dict(d['instruments']))\ 
.drop('instruments', axis=1) 

df2 = pd.DataFrame.from_dict(df.interestRate[0]) 
df2 = pd.DataFrame.transpose(df2) 
df2 = df2.reset_index() 
df2.columns.values[0] = 'instrument' 

print (df2) 

    instrument ask bid 
0  EUR 0.004 0.0 
1  USD 0.004 0.0 
+0

Vielen Dank @Jossie Calderon –

Verwandte Themen