numpy: lecture efficacement un large éventail

J'ai un fichier binaire qui contient un dense n*m matrice de 32 bits flottant. Quel est le moyen le plus efficace de le lire en Fortran-commandé numpy tableau?

Le fichier est de plusieurs giga-octets de taille. J'arrive à contrôler le format, mais il doit être compact (c'est à dire sur 4*n*m octets de longueur) et doit être facile à produire de la non-code Python.

modifier: Il est impératif que la méthode produit une Fortran-commandé matrice directement (en raison de la taille des données, je ne peux pas se permettre de créer un C-commandé de la matrice, puis de le transformer en un distinct Fortran-copie ordonnée.)

Ne scipy.org/Cookbook/InputOutput répondre à votre question? (Voir la section "fichiers binaires")
Merci. En fait, j'ai déjà fait des expériences avec certaines des méthodes qui y sont décrits. Je me suis poser la question dans l'espoir que quelqu'un allait venir de l'avant qui a une expérience de première main ce que je suis en train de faire, ou est familier avec numpy internes et peuvent vous conseiller à partir de cet angle.
En général, j'ai trouvé lors de la lecture de tableaux de très grande taille dans numpy que j'ai besoin de connaître la taille à l'avance, afin de pré-allouer l'ensemble approprié pour contenir les données. Connaissez-vous la taille à l'avance? Si non, essayez d'utiliser une approche de deux passes: la première analyse pour découvrir taille/dimensions données, puis allouer tableau, puis de lire/analyser dans ce tableau.
Bon point, merci. Je sais que la taille à l'avance (je contrôle le format des données, afin que je puisse écrire de la taille comme une partie de l'en-tête du fichier.)

OriginalL'auteur NPE | 2010-12-06