Ho un file csv di 100 milioni di righe (in realtà molti file CSV separati) per un totale di 84 GB. Ho bisogno di convertirlo in un file HDF5 con un set di dati float singolo. Ho usato h5py in testing senza problemi, ma ora non posso fare il set di dati finale senza esaurire la memoria.Convert csv grande a hdf5
Come posso scrivere su HDF5 senza dover memorizzare l'intero set di dati in memoria? Mi aspetto un codice reale qui, perché dovrebbe essere abbastanza semplice.
Stavo solo esaminando pytables, ma non sembra che la classe dell'array (che corrisponde a un set di dati HDF5) possa essere scritta in modo iterativo. Allo stesso modo, panda ha metodi read_csv
e to_hdf
nel suo io_tools
, ma non riesco a caricare l'intero set di dati in una volta, in modo che non funzioni. Forse puoi aiutarmi a risolvere il problema correttamente con altri strumenti in pytables o panda.