在Python中处理数百万行

时间:2019-03-13 03:53:23

标签: python csv bigdata time-complexity

我想以我对python时间复杂度和可用于加快速度的数据结构进行研究的事实作为开头。

但是,我正在努力思考一种有效的方法来针对250万行文件检查一组值。到目前为止,我考虑的一种解决方案是使用列表推导。

当前,我正在尝试通过以下方式处理该问题:

def getTotalVolumeByCounty(fileName, counties):

values = []

with open(fileName) as csvFile:
    csvReader = csv.reader(csvFile)

    headers = next(csvReader)

    for row in csvReader:

        i = 0
        while i < len(counties):
            if row[9] == counties[i]:
                values[i] += int(row[22])
                break
return values

如果愿意的话,采用“传统”方式。将一个列表中的每个值与另一列表中的当前值进行比较。显然,这在时间复杂度方面是不利的。

如前所述,我已经考虑过使用列表推导-但是这些实际上如何节省时间?列表理解是当前尝试的唯一替代方法吗?

0 个答案:

没有答案