我从MATLAB转到python我的算法,我一直坚持并行处理
我需要处理大量具有5个独立数据列的大量行(10k到10M)的csv&#39s(1到1M)。
我已经有了一个执行此操作的代码,但只有一个处理器,将csv加载到RAM中的字典大约需要30分钟(~1k csv&~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
文件名位于从csv加载的列表中(已经完成):
Amp Freq Offset PW FileName
3 10000.0 1.5 1e-08 FlexOut_20140814_221948.csv
3 10000.0 1.5 1.1e-08 FlexOut_20140814_222000.csv
3 10000.0 1.5 1.2e-08 FlexOut_20140814_222012.csv
...
表格中的CSV :(示例:FlexOut_20140815_013804.csv)
# TDC characterization output file , compress
# TDC time : Fri Aug 15 01:38:04 2014
#- Event index number
#- Channel from 0 to 15
#- Pulse width [ps] (1 ns precision)
#- Time stamp rising edge [ps] (500 ps precision)
#- Time stamp falling edge [ps] (500 ps precision)
##Event Channel Pwidth TSrise TSfall
0 6 1003500 42955273671237500 42955273672241000
1 6 1003500 42955273771239000 42955273772242500
2 6 1003500 42955273871241000 42955273872244500
...
我正在寻找像MATLAB' parfor'从列表中取名称将打开文件并将数据放入字典列表中。 它是一个列表,因为文件中有一个订单(PW),但在示例中我发现这样做似乎更复杂,所以首先我会尝试将它放在一个dictonary和在我将数据排列在列表中之后。
现在我开始使用网络上的多处理示例: Writing to dictionary of objects in parallel 当我有一个"工作"我会发布更新。代码。