gpt4 book ai didi

python - 带有嵌套列表的字典中的 DataFrame

转载 作者:太空宇宙 更新时间:2023-11-04 10:32:18 25 4
gpt4 key购买 nike

我有一个带有嵌套列表的 python 字典,我想把它变成一个 pandas DataFrame

a = {'A': [1,2,3], 'B':['a','b','c'],'C':[[1,2],[3,4],[5,6]]}

我希望最终的 DataFrame 看起来像这样:

> A  B  C
> 1 a 1
> 1 a 2
> 2 b 3
> 2 b 4
> 3 c 5
> 3 c 6

当我使用 DataFrame 命令时,它看起来像这样:

pd.DataFrame(a)

> A B C
>0 1 a [1, 2]
>1 2 b [3, 4]
>2 3 c [5, 6]

有没有办法用 C 的元素使数据变长?

最佳答案

这是我想出的:

In [53]: df
Out[53]:
A B C
0 1 a [1, 2]
1 2 b [3, 4]
2 3 c [5, 6]
In [58]: s = df.C.apply(Series).unstack().reset_index(level=0, drop = True)

In [59]: s.name = 'C2'

In [61]: df.drop('C', axis = 1).join(s)
Out[61]:
A B C2
0 1 a 1
0 1 a 2
1 2 b 3
1 2 b 4
2 3 c 5
2 3 c 6

apply(Series) 给我一个包含两列的 DataFrame。为了在保留原始索引的同时将它们合二为一,我使用了 unstackreset_index 删除索引的第一级,它基本上包含 C 中原始列表中的值的索引。然后我将它加入到 df 中。

关于python - 带有嵌套列表的字典中的 DataFrame,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/25738158/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com