CSV performance
Peter Otten
__peter__ at web.de
Mon Apr 27 08:15:59 EDT 2009
psaffrey at googlemail.com wrote:
> I'm using the CSV library to process a large amount of data - 28
> files, each of 130MB. Just reading in the data from one file and
> filing it into very simple data structures (numpy arrays and a
> cstringio) takes around 10 seconds. If I just slurp one file into a
> string, it only takes about a second, so I/O is not the bottleneck. Is
> it really taking 9 seconds just to split the lines and set the
> variables?
>
> Is there some way I can improve the CSV performance?
My ideas:
(1) Disable cyclic garbage collection while you read the file into your data
structure:
import gc
gc.disable()
# create many small objects that you want to keep
gc.enable()
(2) If your data contains only numerical data without quotes use
numpy.fromfile()
Peter
More information about the Python-list
mailing list