Suppression de l'ensemble de données hdf5 à l'aide de h5py
Est-il possible de supprimer un dataset à partir d'une hdf5 fichier, de préférence à l'aide de h5py? Ou sinon, est-il possible de remplacer un ensemble de données tout en gardant les autres ensembles de données intactes?
À ma connaissance, h5py peut lire/écrire hdf5 fichiers dans 5 modes de
f = h5py.File("filename.hdf5",'mode')
où la mode peut être r
pour lire, r+
pour lire-écrire, a
pour lire-écrire, mais crée un nouveau fichier si il n'existe pas, w
pour écrire/réécrire, et w-
qui est la même que w
mais échoue si le fichier existe déjà. J'ai tout essayé mais rien ne semble fonctionner.
Toutes les suggestions sont appréciés.
source d'informationauteur hsnee
Vous devez vous connecter pour publier un commentaire.
Oui, cela peut être fait.
Vous aurez besoin d'avoir ouvert le fichier dans un fichier accessible en écriture en mode, par exemple append (comme ci-dessus) ou d'écrire.
Comme le fait remarquer @seppo-enarvi dans les commentaires à la fin de l'été précédemment recommandé
f.__delitem__(datasetname)
fonction est de mettre en œuvre ladel
de l'opérateur, de sorte que l'on peut supprimer un dataset à l'aidedel f[datasetname]
Je ne comprends pas ce qui a votre question à faire avec l'ouverture de fichier modes. Pour lire/écrire r+ est le chemin à parcourir.
À ma connaissance, le retrait n'est pas facile/possible, en particulier, peu importe ce que vous faites la taille du fichier ne rétrécit pas.
Mais d'écraser le contenu n'est pas un problème