Attualmente sto lavorando a un progetto riguardante la compressione dei set di dati HDF5 e recentemente ho iniziato a utilizzare h5py. Ho seguito le esercitazioni di base ed ho potuto aprire, creare e comprimere un file mentre veniva creato. Tuttavia, non ho avuto successo quando si trattava di comprimere un file esistente (che è lo scopo del mio lavoro).Compressione del file esistente utilizzando h5py
Ho provato ad aprire i file utilizzando 'r +' e quindi a comprimere i set di dati suddivisi in blocchi ma le dimensioni dei file sono rimaste le stesse.
Qualche suggerimento su quali comandi utilizzare o sto andando su cose nel modo sbagliato?
Sì, ho provato esattamente questo, tuttavia sembra funzionare solo per me durante la creazione di un nuovo file ad es. Posso creare un nuovo file con dimensione del blocco (100.100) che ha la compressione gzip/szip/lzf abilitata. Quando carico un file esistente, l'unico modo in cui la compressione sembra funzionare effettivamente è se il contenuto del file originale viene sovrascritto e ne viene creato uno nuovo (con lo stesso nome dell'originale). Quando carico un file, creo un set di dati frammentato, abilito la compressione e quindi chiudo il file, non sembra esserci alcun effetto o modifica. Ho la sensazione di perdere un gradino, non sono sicuro di cosa sia. – kromegaman
La compressione @kromegaman e la dimensione del blocco sono le linee guida su come il file viene scritto sul disco. Non penso che sia qualcosa che puoi cambiare per un file esistente, come già scritto. Penso che l'unico modo per cambiare compressione/blocchi sia scrivere un nuovo file con quelle impostazioni. – Bitwise
Sì, più lo uso più sembra essere in quel modo. Penso che dovrò creare un nuovo file e un set di dati, copiare i dati dal file esistente nel nuovo e quindi comprimere il nuovo file mentre lo creo. Tuttavia, grazie mille per l'aiuto! – kromegaman