在Python中使用多重处理读取多个文件并连接读取值

扎南

我有100个csv文件,每个文件存储相同数量的列。我不想一次阅读它们,而是想实现多重处理。

为了表示,我创建了4个文件:Book1.csv,Book2.csv,Book3.csv,Book4.csv,它们在第A列的第A列中分别存储数字1至5。

我正在尝试以下方法:

import pandas as pd
import multiprocessing
import numpy as np

def process(file):
    return pd.read_csv(file)

if __name__ == '__main__':
    loc = r'I:\Sims'
    fname = [loc + '\Book1.csv', loc + '\Book2.csv', loc + '\Book3.csv', loc + '\Book4.csv']
    p = multiprocessing.Pool()

    for f in fname:
        p.apply_async(process, [f])

    p.close()
    p.join()

我从链接中得到了上面的代码的想法

但是上面的代码没有产生我期望的期望结果:

1,2,3,4,5,1,2,3,4,5,1,2,3,4,5,1,2,3,4,5

编辑:我想将每个文件加载到单独的处理器中并合并文件内容。由于我要加载和合并内容的文件数为100,因此我希望一次查找4个文件(我的PC有4个处理器)时可以加快处理速度。

普拉巴卡

试试这个

import pandas as pd
import multiprocessing
import numpy as np

def process(file):
    return pd.read_csv(file)

if __name__ == '__main__':
    loc = r'I:\Sims'
    fname = [loc + '\Book1.csv', loc + '\Book2.csv', loc + '\Book3.csv', loc + '\Book4.csv']
    

    with multiprocessing.pool(5) as p: #Create a pool of 5 workers
        result = p.map(process, fname)
    print(len(result))

本文收集自互联网,转载请注明来源。

如有侵权,请联系 [email protected] 删除。

编辑于
0

我来说两句

0 条评论
登录 后参与评论

相关文章

在多个Python版本中使用多重处理

Python多重处理:读取大文件并更新导入的字典

Python多重处理:奇怪的行为,以并行方式读取单个文件

在SoapUI中使用Groovy脚本从xlsx文件读取值

如何使用python从AWS的多个区域读取值?

在Python中使用for循环读取文件内容

使用 Python 在循环中使用生成器读取多个 txt 文件

从配置文件Python读取值

Python-Fab无法从文件读取值

在python中从txt文件中读取值

无法在 BeanShell 后处理器中使用 RegEx 从位置 URL 读取值

如何使用GetPrivateProfileStringW从.ini文件读取值

从XML文件读取值

在for循环中使用python词典读取具有不同名称的多个CSV文件

如何在python中使用for循环读取具有多个工作表的Excel文件

使用Python Pandas,读取xlsx文件中写入的多个文件夹路径并分别处理每个csv文件

在Haskell中读取和处理多个文件

在 R 中读取和处理多个文件

使用 openpyxl 读取多个文件

使用熊猫读取多个文件

使用LINQ读取多个文件

使用 Python 读取文件

从批处理文件读取值并打印时出错

批处理:从包含特殊字符的 .properties 文件中读取值

如何使用python从网页中读取值?

努力在 ASP .NET 中使用 ConfigurationManager.AppSettings["key"] 从 web.config 文件中读取值

如何从json文件中读取值并在MATLAB plot函数中使用它?

Python-如何读取多个文件,处理和写入多个文件

批处理文件读取文本文件并尝试根据读取值停止进程