【问题标题】:How to use several input files and do parallel processing in python?如何在python中使用多个输入文件并进行并行处理?
【发布时间】:2017-07-09 11:04:08
【问题描述】:

我有 30 个 csv 文件。我想把它作为 for 循环中的输入,在 pandas 中?

每个文件都有fileaa、fileab、fileac、filead、....等名称

我有多个输入文件,并且我想接收一个输出。

通常我使用 read_csv 但由于内存错误,'read_csv' 不起作用。

f = "./file.csv"
df = pd.read_csv(f, sep="/", header=0, dtype=str)

所以我想在 python 2.7 中尝试并行处理

【问题讨论】:

    标签: python python-2.7 pandas parallel-processing


    【解决方案1】:

    您可能想看看dask

    Dask 文档显示了 demo,介绍了如何读取许多 csv 文件并输出单个 dask 数据帧:

    import dask.dataframe as dd
    df = dd.read_csv('*.csv')
    

    然后 许多(但不是全部)pandas 方法可用,即:

    df.head()
    

    dask dataframe 上阅读更多内容以了解与 pandas 数据框的区别会很有用

    【讨论】:

    • 我收到此警告:/ RuntimeWarning:无法检测到合适的 IP 地址以达到“8.8.8.8”,默认为“127.0.0.1”:[Errno 101] 网络无法访问 %(主机, 默认, e), RuntimeWarning)
    • 我在 pandas ValueError 中遇到错误:元数据推断在 apply 中失败。原始错误如下:------------ ValueError('could not convert string to float: foo', u'occurred at index a')
    • 如果您发现 dask 是处理手头任务的合适工具,那么我建议您提出一个单独的问题来解决您在使用 dask 时遇到的具体问题。另请注意,在您的 pandas/dask 相关问题中添加 MCVE 将加快获得有用反馈的速度。
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2020-07-09
    相关资源
    最近更新 更多