如何访问 pandas 数据框列中的字典元素并对其进行迭代以创建填充有各自值的新列?

Posted

技术标签:

【中文标题】如何访问 pandas 数据框列中的字典元素并对其进行迭代以创建填充有各自值的新列?【英文标题】:How to acesses dictionary elements within a pandas dataframe column and iterate over them too create new columns filled with their respective values? 【发布时间】:2020-11-22 23:38:25 【问题描述】:

我有一个带有包含字典的列的 pandas 数据框,我想遍历字典键以创建以各种键命名的新列。当我尝试获取嵌套列表逻辑以使用“标签”列中的相应键值填充这些行值时,问题就出现了。现在我的代码生成列名,但用相同的值填充所有行。我认为 .get() 应该在每次迭代时检索相应的值?

for x in df1['tags']:
    for e in x.values():
        df1[str(e)] = x.get(e)

【问题讨论】:

试试,df1.tags.apply(pd.Series) 【参考方案1】:
for i, row in df1.iterrows():
   for e in row['tags']:
      df1.loc[i, e] = row['tags'][e]

【讨论】:

以上是关于如何访问 pandas 数据框列中的字典元素并对其进行迭代以创建填充有各自值的新列?的主要内容,如果未能解决你的问题,请参考以下文章

如何迭代熊猫数据框列中的元素?

循环遍历 pandas 数据框列中的列表元素以在新列中返回列表

Pandas:如何将数据框列中的“时间戳”值从对象/字符串转换为时间戳?

如何从 Pandas 数据框列中的日期时间减去 3 小时?

将字典映射到数据框列中的列表

从 pandas 数据框列中的对象中删除逗号