Python dict到DataFrame Pandas-级别 [英] Python dict to DataFrame Pandas - levels

查看:111
本文介绍了Python dict到DataFrame Pandas-级别的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!

问题描述

几个月前,@ Romain X.在这个问题上为我提供了很多帮助:

Few months ago @Romain X. helped me a lot with this question:

Python dict到DataFrame Pandas

现在我正尝试在更深层次上做同样的事情,这是示例:

Now I´m trying to do the same with deeper levels, here is the example:

 {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}}}]}

数据框"的列标签和值应为仪器,EUR_ask,EUR_bid,USD_ask,USD_bid.

Columns labels and values of my Data Frame should be instrument, EUR_ask, EUR_bid, USD_ask, USD_bid.

我尝试过:

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

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

谢谢!

推荐答案

来了,

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

这篇关于Python dict到DataFrame Pandas-级别的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!

查看全文
登录 关闭
扫码关注1秒登录
发送“验证码”获取 | 15天全站免登陆