Pandas:将每一行转换为<column name,row =“”value =“”> dict并添加为新列

时间:2017-08-10 22:17:07

标签: python pandas numpy apply

我有一个df这样

          STATUS_ID               STATUS_NM
0                 1                A
1                 2                B
2                 3                C
3                 4                D

我想通过apply来执行一行,获取一个键,在一个单独的列中每行的值为par。最终的df应该是

                        STATUS
0                 {STATUS_ID:1,STATUS_NM:A}
1                 {STATUS_ID:2,STATUS_NM:B}
2                 {STATUS_ID:3,STATUS_NM:C}
3                 {STATUS_ID:4,STATUS_NM:D} 

更新: 我已经尝试了df[cols].apply(pd.Series.to_dict, axis=1)df[cols].apply(lambda x: x.to_dict(), axis=1),但我没有得到实际的字典 <built-in method values of dict object at 0x00...

我相信它是导致问题的我的熊猫版本。这已在此处讨论过 - https://github.com/pandas-dev/pandas/issues/8735 所以问题是,是否有另一种方法来执行相同的操作来规避这个问题。我无法将我的Pandas版本更新为0.17

0 个答案:

没有答案