gpt4 book ai didi

python - 快速读取所有 csv 文件并更新共享字典

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

我是 python 和 pandas 的新手,但这就是我想做的。我想通读目录中的所有 csv 文件并从文件中检索一个数据单元格并更新字典中的计数,检索值是字典中的键。我必须为 ~6000 个 csv 文件执行此操作。我怎样才能快速做到这一点?

stats = {'A':0, 'B':0, 'C':0, 'D':0}
for file in f:
df = pandas.read_csv(file)
type = df["type"].head(1)[0]
stats[type]+=1

我读取文件的顺序无关紧要。我希望同时这样做,共享字典。除非有更好的方法来实现我想要实现的目标。

最佳答案

您可以通过以下方式显着优化您的逻辑:

  • 只读第一行。
  • 只阅读必读的专栏。
  • 从所需列的第一个值创建一个惰性迭代器。
  • 将生成的可迭代对象提供给 collections.Counter

下面是一些应该有帮助的代码:

from collections import Counter
import pandas as pd

res = Counter(pd.read_csv(file, nrows=1, columns=['type'])['type'].iloc[0] \
for file in f)

Counter 的美妙之处在于无需预先指定键。另请注意,Counterdict 的子类,因此您不会放弃任何功能。

关于python - 快速读取所有 csv 文件并更新共享字典,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/52227540/

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