Pergunta

Parece que eu só pode carregar tudo como tipo uint8, apenas com a seguinte duas linhas,

scipy.io importação X1 = scipy.io.loadmat ( 'one.mat')

todos os números de precisão dupla se transformou. Eu acredito que os criadores de scipy estão cientes do fato de que números de ponto flutuante são muito mais comuns ...

Então, o que devo fazer? Obrigado!

Foi útil?

Solução

Qual o nível matfile você está tentando ler? De acordo com a os docs ,

v4 (Nível 1.0), v6 e v7 para 7,2 matfiles são suportadas.

Você vai precisar de uma biblioteca python HDF5 ler Matlab 7.3 arquivos mat formato. Porque scipy não fornecer um, nós não implementam a HDF5 / 7.3 Interface aqui.

Para os níveis suportados, variáveis ??devem ser recarregado com o dtipo com a qual eles foram salvos; se você prefere carregá-los como Matlab seria, adicione mat_dtype=True no final dos parâmetros com os quais vocês chamam loadmat.

Licenciado em: CC-BY-SA com atribuição
Não afiliado a StackOverflow
scroll top