Python拆分unicode

Python拆分unicode,python,dataframe,unicode,unicode-string,Python,Dataframe,Unicode,Unicode String,我有以下Unicode字符串: {u'prices': [{u'ask': 1.05321, u'instrument': u'EUR_USD', u'bid': 1.05308, u'time': u'2016-12-30T02:53:26.928268Z'}]} 并希望将其转换为具有以下结构的数据帧: ask 1.05321 instrument EUR_USD bid 1.05308 time 2016-

我有以下Unicode字符串:

{u'prices': [{u'ask': 1.05321, u'instrument': u'EUR_USD', u'bid': 1.05308, u'time': u'2016-12-30T02:53:26.928268Z'}]}
并希望将其转换为具有以下结构的数据帧:

ask           1.05321          
instrument    EUR_USD
bid           1.05308
time          2016-12-30T02:53:26.928268Z

提前谢谢

如果您是指熊猫数据帧:

import pandas as pd

dd = {u'prices': [{u'ask': 1.05321, u'instrument': u'EUR_USD', u'bid': 1.05308, u'time': u'2016-12-30T02:53:26.928268Z'}]}

pd.Series(dd['prices'][0]).to_frame().reset_index()

#        index  0
#0         ask  1.05321
#1         bid  1.05308
#2  instrument  EUR_USD
#3        time  2016-12-30T02:53:26.928268Z

或者使用
json\u规范化

from pandas.io.json import json_normalize
json_normalize(dd['prices']).T.reset_index()

#        index        0
#0         ask  1.05321
#1         bid  1.05308
#2  instrument  EUR_USD
#3        time  2016-12-30T02:53:26.928268Z

如果您是指熊猫数据帧:

import pandas as pd

dd = {u'prices': [{u'ask': 1.05321, u'instrument': u'EUR_USD', u'bid': 1.05308, u'time': u'2016-12-30T02:53:26.928268Z'}]}

pd.Series(dd['prices'][0]).to_frame().reset_index()

#        index  0
#0         ask  1.05321
#1         bid  1.05308
#2  instrument  EUR_USD
#3        time  2016-12-30T02:53:26.928268Z

或者使用
json\u规范化

from pandas.io.json import json_normalize
json_normalize(dd['prices']).T.reset_index()

#        index        0
#0         ask  1.05321
#1         bid  1.05308
#2  instrument  EUR_USD
#3        time  2016-12-30T02:53:26.928268Z

您可以使用
pandas
模块来解决此问题

import pandas as pd

inp = {u'prices': [{u'ask': 1.05321, 
                    u'instrument': u'EUR_USD',
                    u'bid': 1.05308,
                    u'time': u'2016-12-30T02:53:26.928268Z'}]
      }.values()[0]

df = pd.DataFrame(inp)

for k,v in df.iteritems():
   print k, v[0]

您可以使用
pandas
模块来解决此问题

import pandas as pd

inp = {u'prices': [{u'ask': 1.05321, 
                    u'instrument': u'EUR_USD',
                    u'bid': 1.05308,
                    u'time': u'2016-12-30T02:53:26.928268Z'}]
      }.values()[0]

df = pd.DataFrame(inp)

for k,v in df.iteritems():
   print k, v[0]

到底是什么导致了这个问题?只需将xxx['prices']
传递给数据帧构造函数并转置结果。到底是什么导致了问题?只需将xxx['prices']
传递给数据帧构造函数并转置结果。