pandas 分解多字典列

bz4sfanl  于 2022-12-02  发布在  其他
关注(0)|答案(1)|浏览(210)

我有一个包含+15列的数据,所有这些列都以字典作为值。所有字典都有相同的键,但不同的值取决于列和键。我需要将它们分解为一个以键作为索引的数据; this a part of the data
我已经试过这个代码了!但是它只对一列有效。我必须对所有15列都这样做,并合并它们。

data = pd.DataFrame([[i, k, v] for i, d in df[['halstead_vol', 'cyclomatic_complexity']].values for k, v in d.items()],
                  columns=['halstead_vol', 'cyclomatic_complexity', 'h1'])
efzxgjgh

efzxgjgh1#

如果你在panda中查看explode function文档,要分解多个列你可以用这种格式实现:

DataFrame.explode(list(col1col2col3...))

对于您的情况:

df.explode(list('halstead_volcyclomatic_complexityh1'), ignore_index=True)

对于字典值,请尝试以下操作:

new_df = df['halstead_vol'].apply(pd.Series)

另请检查SO上的此thread以了解更多信息。

相关问题