Python 数据帧拆分和转置,使最左边的值成为标头

Python 数据帧拆分和转置,使最左边的值成为标头,python,pandas,dataframe,split,Python,Pandas,Dataframe,Split,我有一个带有成对数据的dataframe列,LHS是列名,RHS是列值: display(df_Normal.head(1)) Data 0 {'MktUMidInit': 'a', 'ProdTemplateName': '', 'ForwardPriceDrop': '99.10', 'CoverPrice': '99.20 'CustParentCdr': '', ...} 期望输出: Data MktUMidInit ProdTemplateName ForwardPriceDro

我有一个带有成对数据的dataframe列,LHS是列名,RHS是列值:

display(df_Normal.head(1))

Data
0  {'MktUMidInit': 'a', 'ProdTemplateName': '', 'ForwardPriceDrop': '99.10', 'CoverPrice': '99.20 'CustParentCdr': '', ...}
期望输出:

Data
MktUMidInit ProdTemplateName ForwardPriceDrop CoverPrice CustParentCdr...
a                            99.10            99.20          
每行有50多对数据

df.head(1).to_dict() 

{'Data': {0: {'Action': 'CustAcceptedQuote',
   'AllQ': '104.643',
   'AutoNegDealerMidValue': '0',
   'AutoNegDealerSpread': '0',
   'AutoNegDealerValue': '-1',
   'ClearingChannel': '',
   'ClearingCode': '',
   'ClearingHouse': '',
   'ClearingMember': '',
   'ClearingModel': '',
   'CneResultMessage': '',
   'Code': 'AU3TB0000036',
   'Commission': '', }}}
我想先在逗号上分开,然后再对折。“拆分”命令似乎对数据无效:

dfSplit = df_Normal['Data'].str.split(',', 1, expand=True)
display(dfSplit.head(1))

NaN

对于traspose,我查看了df.set_索引,但这是错误的。有什么建议吗

看起来您有想要规范化为数据帧的JSON数据。有一个函数可以做到这一点:

from pandas.io.json import json_normalize    
json_normalize(df.Data.tolist())

或者,您可以使用
pd.DataFrame.from_records

pd.DataFrame.from_records(df.Data.tolist())


你能打印
df.head(5).to_dict()
并将其作为文本粘贴到你的问题中吗?问题已更新。是@cᴏʟᴅsᴘᴇᴇᴅ 来自pymongo的JSON文件。谢谢,m工作得很好!!
              Action     AllQ AutoNegDealerMidValue AutoNegDealerSpread  \
0  CustAcceptedQuote  104.643                     0                   0   

  AutoNegDealerValue ClearingChannel ClearingCode ClearingHouse  \
0                 -1                                              

  ClearingMember ClearingModel CneResultMessage          Code Commission  
0                                                AU3TB0000036