Python正在获取列中字典的值

2024-09-29 19:33:41 发布

您现在位置:Python中文网/ 问答频道 /正文

我正在使用pandas创建一个数据帧,一切正常,但我有两个列,其中有字典。如何拆分此列以提取价格值和股权值。你知道吗

             AgainstSidePrices                        ForSidePrices
0    {u'_Price': 4.8, u'_Stake': 160.69}   {u'_Price': 4.6, u'_Stake': 21.44}   
1      {u'_Price': 4.8, u'_Stake': 5.69}     {u'_Price': 4.7, u'_Stake': 4.0}   
2     {u'_Price': 5.0, u'_Stake': 22.32}   {u'_Price': 4.9, u'_Stake': 15.34}   
3     {u'_Price': 5.6, u'_Stake': 15.18}   {u'_Price': 5.4, u'_Stake': 14.82}   
4      {u'_Price': 9.6, u'_Stake': 4.22}    {u'_Price': 9.4, u'_Stake': 6.71}   
5      {u'_Price': 12.5, u'_Stake': 4.0}  {u'_Price': 11.5, u'_Stake': 12.35}   
6     {u'_Price': 950.0, u'_Stake': 2.0}  {u'_Price': 128.0, u'_Stake': 2.25}   
7                                    NaN                                  NaN   
8      {u'_Price': 4.8, u'_Stake': 4.72}    {u'_Price': 4.6, u'_Stake': 9.32}   
9       {u'_Price': 4.9, u'_Stake': 2.0}    {u'_Price': 4.7, u'_Stake': 3.92}   

我有一个解决这个问题的办法,但问题出现时,有一个像7号线。你知道吗

table['price'] = table['AgainstSidePrices'].apply(lambda x: x.get('_Price'))

你能帮帮我吗?你知道吗


Tags: 数据pandas字典table价格nanpriceapply
1条回答
网友
1楼 · 发布于 2024-09-29 19:33:41

根据需要,将其应用于非空条目:

table.AgainstSidePrices[table.AgainstSideProces.notnull()].apply(...)

或者更改apply函数来处理此问题:

... apply(lambda x: <something> if x is None else x.get('_Price'))

请注意,答案的维度是不同的:第一个维度仅适用于相关行,第二个维度适用于所有行。你知道吗

相关问题 更多 >

    热门问题