[Python] Gzip

Marco Ippolito ippolito.marco a gmail.com
Lun 17 Nov 2014 10:17:26 CET


Ciao a tutti,
ho letto che per creare una matrice numpy di grosse dimensioni č pių
opportuno creare una matrice vuota, e poi riempirla progressivamente.

Ora, la creazione di una matrice vuota non mi crea problemi, mentre la
sua compressione, ho verificato avere dei "limiti" di dimensione.

con (300, 223690)
-rw-rw-r--  1 marco marco 2,0G nov 17 09:56 X_Matrix
-rw-rw-r--  1 marco marco 2,0M nov 17 09:57 X_Matrix.gz

con (300, 223700) e in avanti (quindi anche per 223800....)

marco a pc:~/CNN_Tut/InputBuilding$ time ./matr_init_pickling.py
[[ 0.  0.  0. ...,  0.  0.  0.]
 [ 0.  0.  0. ...,  0.  0.  0.]
 [ 0.  0.  0. ...,  0.  0.  0.]
 ...,
 [ 0.  0.  0. ...,  0.  0.  0.]
 [ 0.  0.  0. ...,  0.  0.  0.]
 [ 0.  0.  0. ...,  0.  0.  0.]]
Traceback (most recent call last):
  File "./matr_init_pickling.py", line 131, in <module>
    gzipping.get_zipped()
  File "./matr_init_pickling.py", line 95, in get_zipped
    return self.gzip_meth()
  File "./matr_init_pickling.py", line 89, in gzip_meth
    f_out.writelines(f_in)
  File "/usr/lib/python2.7/gzip.py", line 235, in write
    self.crc = zlib.crc32(data, self.crc) & 0xffffffffL
OverflowError: size does not fit in an int

real    1m15.449s
user    1m3.658s
sys     0m1.926s

Che fare per ovviare a questo "inconveniente"?

Vi ringrazio.
Marco


Maggiori informazioni sulla lista Python