【问题标题】:Unlist dictionaries from a list从列表中取消列出字典
【发布时间】:2020-11-18 00:42:15
【问题描述】:

我有一个非常大的列表,所以我将使用以下作为可重现的示例。我想取消列出以下内容,以便我可以将字典的键用作数据框的列。

[{'message':'Today is a sunny day.','comments_count':'45','id': 
'1401305690071546_11252160039985938','created_time': '2020-02-29T13:43:46+0000'},
{'message':'Today is a cloudy day.','comments_count':'47','id': 
'1401305690073586_11252160039985938','created_time': '2020-03-29T13:43:46+0000'}]

所需的输出将是作为熊猫数据框的以下列:

message  comments_count  id  created_time 

【问题讨论】:

  • 当你说“unlist”时,你到底是什么意思?
  • 您能提供所需的最终结果吗?如果您希望数据框中的这些数据可以使用简单的pd.DataFrame(your_list)。此外,如果这与熊猫有关,请在您的问题中添加熊猫标签。

标签: python pandas list dataframe dictionary


【解决方案1】:

如果要将所有数据放入数据框中:

import pandas as pd
my_container = [{'message':'Today is a sunny day.','comments_count':'45','id': '1401305690071546_11252160039985938','created_time': '2020-02-29T13:43:46+0000'}, {'message':'Today is a cloudy day.','comments_count':'47','id': '1401305690073586_11252160039985938','created_time': '2020-03-29T13:43:46+0000'}]
df = pd.DataFrame(my_container)

如果您想要一个包含正确列的空数据框:

columns = set()
for d in my_container:
    columns.update(d.keys())
df = pd.DataFrame(columns=columns)

【讨论】:

    【解决方案2】:

    如果它是您想要转换为数据框的字典列表,您可以执行以下操作:

    df1 = pd.DataFrame(l)
    # or
    df2 = pd.DataFrame.from_dict(l)
    

    两个用例的输出是:

    print(df2)
    print(df2.columns)
    
                      message  ...              created_time
    0   Today is a sunny day.  ...  2020-02-29T13:43:46+0000
    1  Today is a cloudy day.  ...  2020-03-29T13:43:46+0000
    
    [2 rows x 4 columns]
    Index(['message', 'comments_count', 'id', 'created_time'], dtype='object')
    

    【讨论】:

      【解决方案3】:

      您可以遍历列表并找到每个项目的type()

      dictList = []
      for i in myList:
          if type(i) == dict:
              dictList.append(i)
              myList.remove(i)
      

      【讨论】:

        猜你喜欢
        • 2020-05-23
        • 1970-01-01
        • 2019-05-07
        • 2011-11-08
        • 1970-01-01
        • 1970-01-01
        • 2020-03-26
        相关资源
        最近更新 更多