【问题标题】:List to Dictionary in pandas?列表到熊猫字典?
【发布时间】:2019-08-20 07:37:46
【问题描述】:

我有一列将值存储为列表。该列如下所示:

[{'key': 'firebase_screen_class', 'value': 'MainViewController'},
 {'key': 'firebase_event_origin', 'value': 'auto'},
 {'key': 'firebase_screen_id', 'value': '81265142482196321'},
 {'key': 'engagement_time_msec', 'value': '3374'}]

我想将其转换为如下所示的列:

{'firebase_screen_class': 'MainViewController',
 'firebase_event_origin': 'auto',
 'firebase_screen_id': '81265142482196321',
 'engagement_time_msec': '3374'}

【问题讨论】:

  • 提示:对于每个键,它的值就是你的键,它的键就是你的值。

标签: python pandas list dictionary identity-column


【解决方案1】:

你可以简单地使用 for 循环:

l1 = [{'key': 'firebase_screen_class', 'value': 'MainViewController'},
     {'key': 'firebase_event_origin', 'value': 'auto'},
     {'key': 'firebase_screen_id', 'value': '81265142482196321'},
     {'key': 'engagement_time_msec', 'value': '3374'}]
final_dict = {}
for d1 in l1:
    final_dict[d1['key']] = d1['value']

print final_dict

【讨论】:

    【解决方案2】:

    使用字典理解:

    {d['key']:d['value'] for d in col}
    

    col 是您的原始列。

    【讨论】:

      【解决方案3】:
      list = [{'key': 'firebase_screen_class', 'value': 'MainViewController'},
              {'key': 'firebase_event_origin', 'value': 'auto'},
              {'key': 'firebase_screen_id', 'value': '81265142482196321'},
              {'key': 'engagement_time_msec', 'value': '3374'}]
      
      result = dict()
      
      for d in list:
           result[d['key']] = d['value']
      

      【讨论】:

        【解决方案4】:
        def dd(arr):
            di = {}
            for j in arr:
                di[j['key']] = j['value']
            return di
        
        df['new_cil'] = df['col'].map(dd)
        

        【讨论】:

          猜你喜欢
          • 1970-01-01
          • 2019-05-02
          • 2020-07-22
          • 2021-04-30
          • 1970-01-01
          • 2018-05-09
          • 2018-11-21
          • 2020-05-31
          相关资源
          最近更新 更多