2017-05-26 1 views
1

J'ai des fichiers .mat avec des données HDF5 et je veux les charger en Python (Pandas DataFrame). Je peux charger le fichier:Jeu de données HDF5 de MATLAB à Pandas DataFrame en Python

f2 = h5py.File("file.mat") 
f2['data'] 

qui est un ensemble de données HDF5:

<HDF5 dataset "data": shape (9999999, 32), type "<f8">

Si je lis avec Pandas:

g = pd.read_hdf("file.mat",'data') 

Je reçois l'erreur suivante:

cannot create a storer if the object is not existing nor a value are passed

Comment puis-je le convertir en un Pandas DataFrame?

Répondre

1

AFAIK vous ne pouvez pas lire les fichiers HDF5 en utilisant des méthodes Pandas, qui ne sont pas écrites à l'aide Pandas.

Vous pouvez lire les utiliser l'une des approches suivantes:

read matlab v7.3 file into python list of numpy arrays via h5py

Reading ALL variables in a .mat file with python h5py

http://poquitopicante.blogspot.de/2014/05/loading-matlab-mat-file-into-pandas.html

Read .mat files in Python

+0

Je suppose que le fait de savoir que cela ne peut pas être fait est la réponse à laquelle je devrai me contenter. Je vais probablement aller à la route du tableau numpy. Merci pour l'info. –

0

Dans le premier exemple votre fichier est "file.mat" et dans le second "data.mat"

+0

Je l'ai mis à jour, je vous remercie. –