gpt4 book ai didi

Python 将字典列表写入 csv

转载 作者:太空宇宙 更新时间:2023-11-04 07:16:42 27 4
gpt4 key购买 nike

我遇到了一个问题。我有一个看起来像这样的字典列表:

dict_list=[{'alfa':['001','2'], 'beta':['001','3'], 'gamma':['001','2']},
{'alfa':['002','6'], 'beta':['002','4'], 'omega':['002','7']}]

我的意图是像这样创建一个 csv:

WORD, TEXT, FREQ
alfa, 001, 2
alfa, 002, 6
beta, 001, 3
beta, 002, 4
gamma,001, 2
omega,002, 7

你认为有可能解决吗?

最佳答案

pandas 提供了一种非常直观的方式来考虑遍历字典列表。因为列表中的每个元素都是一个 dict,可以很容易地转换为 pandas.DataFrame,所以您可以循环遍历列表,创建一个 DataFrame 为每个元素,然后 concat 它们。

In [20]: l = []

In [21]: for dct in dict_list:
...: l.append(
...: pandas.DataFrame(dct).transpose()
...: )

In [22]: tmp = pandas.concat(l) # aggregate them all
In [23]: print(tmp)
Out[23]:
0 1
alfa 001 2
beta 001 3
gamma 001 2
alfa 002 6
beta 002 4
omega 002 7

pandas 很容易写入 csv,所以你可以这样做:

 In [21]: tmp.to_csv('/my-file-path.csv')

使用 pandas 对象,您可以对它们进行排序(如您想要的结果):

In [24]: tmp.sort_index()
Out[24]:
0 1
alfa 001 2
alfa 002 6
beta 001 3
beta 002 4
gamma 001 2
omega 002 7

还有很多,更多!要准确复制您要查找的内容,只需重命名 Index 和列,如下所示:

In [30]: tmp.index.name = 'WORD'
In [36]: tmp = tmp.rename(columns={0: 'TEXT', 1: 'FREQ'})
In [37]: print(tmp)

TEXT FREQ
WORD
alfa 001 2
beta 001 3
gamma 001 2
alfa 002 6
beta 002 4
omega 002 7

关于Python 将字典列表写入 csv,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/41795296/

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