Python多线程或多进程解析文本数据

Python多线程或多进程解析文本数据,python,parsing,parallel-processing,python-multiprocessing,python-multithreading,Python,Parsing,Parallel Processing,Python Multiprocessing,Python Multithreading,我有一个巨大的(>1GB的文本文件),我想解析并转换成更小的文件 我的文本文件如下所示: Iteration column1 column2 .... column 10k 1 data_1_1 data_1_2 data_1_10k 2 data_2_1 data_2_2 data_2_10k ... 10k data_10k_1 data_10k_2 data

我有一个巨大的(>1GB的文本文件),我想解析并转换成更小的文件

我的文本文件如下所示:

Iteration column1     column2     ....   column 10k
1         data_1_1    data_1_2           data_1_10k
2         data_2_1    data_2_2           data_2_10k
...
10k       data_10k_1    data_10k_2       data_10k_10k
我想解析此文本文件并将其转换为10k CSV文件,其中每个CSV文件将包含以下数据:

Iteration,   column
1,           data_1
2,           data_2
...,
10k,         data_10k

我正在寻找用python实现这一点的最快方法。是否可以将其并行化为10k块?

我认为,如果您的文件“格式良好”,则可以轻松使用
numpy
函数加载文本文件块。使用
np.loadtxt()
可以设置要跳过的行数和要读取的行数。通过这种方式,您可以设置一个简单的for循环,分块读取文件并写入另一个文件


如果希望使用
多处理
,则必须编写一个函数来读取文本文件的一块并保存它。然后,使用
pool.map()
-或
pool.apply_async()
-方法,您可以以与上述类似的方式迭代文件,但使用
多处理
-模块。

这是否回答了您的问题?请对GB使用
GB
。。。。