Maison > Article > développement back-end > Comment enregistrer et lire des tableaux Numpy
Cette fois je vais vous montrer comment sauvegarder et lire des tableaux Numpy, quelles sont les précautions pour sauvegarder et lire des tableaux Numpy, ce qui suit est un cas pratique, prenons un regarde une fois.
1. Les tableaux sont enregistrés au format binaire
np.save et np.load sont les deux principaux moyens de lire et d'écrire une matrice de disques. dataFonction. Par défaut, le tableau est enregistré dans un fichier avec l'extension npy au format binaire brut non compressé. En prenant le tableau a comme exemple
np.save("filename.npy",a) b = np.load("filename.npy")
En utilisant cette méthode, le nom du suffixe du fichier enregistré sera définitivement défini. . Pour .npy
2. Accédez aux fichiers texte
à l'aide de np.savetxt et np.loadtxt ne peuvent lire et écrire qu'en 1 dimension. Tableau 2 dimensions
np.savetxt :Écrivez le tableau dans un fichier texte séparé par un certain délimiteur
np.loadtxt :Spécifiez un certain délimiteur, lisez le fichier texte dans un tableau
np.savetxt("filename.txt",a) b = numpy.loadtxt("filename.txt", delimiter=',')
3. Enregistrez-le sous forme de fichier binaire
Utilisez la fonction tofile de le tableau Vous pouvez facilement écrire les données du tableau dans un fichier au format binaire
a.tofile("filename.bin") b = np.fromfile("filename.bin",dtype = **)
Cette méthode présente plusieurs différences par rapport à np.save :
La fonction tofile ne peut enregistrer les tableaux que sous forme de fichiers binaires, et il n'y a aucune exigence fixe pour l'extension de fichier. Cette méthode de sauvegarde a des exigences pour la lecture des données. np.fromfile doit spécifier manuellement le type des données lues. Si le format spécifié n'est pas cohérent avec celui lors de la sauvegarde, les mauvaises données seront lues. La fonction
tofile ne peut pas enregistrer les informations de ligne et de colonne des données actuelles, que l'ordre du tableau soit au format langage C ou au format du langage Fortran, le langage C. Le format est utilisé pour la sortie. Par conséquent, les données lues à l'aide de np.fromfile sont un tableau unidimensionnel , et reshape doit être utilisé pour spécifier les informations de ligne et de colonne.
Par exemple, comme le montre l'exemple suivant :
>>> a = np.arange(0,12) >>> a.shape = 3,4 >>> a array([[ 0, 1, 2, 3], [ 4, 5, 6, 7], [ 8, 9, 10, 11]]) >>> a.tofile("a.bin") >>> b = np.fromfile("a.bin", dtype=np.float) # 按照float类型读入数据 >>> b # 读入的数据是错误的 array([ 2.12199579e-314, 6.36598737e-314, 1.06099790e-313, 1.48539705e-313, 1.90979621e-313, 2.33419537e-313]) >>> a.dtype # 查看a的dtype dtype('int32') >>> b = np.fromfile("a.bin", dtype=np.int32) # 按照int32类型读入数据 >>> b # 数据是一维的 array([ 0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11]) >>> b.shape = 3, 4 # 按照a的shape修改b的shape >>> b array([[ 0, 1, 2, 3], [ 4, 5, 6, 7], [ 8, 9, 10, 11]])
Je crois que vous maîtrisez la méthode après avoir lu le cas dans ce article. Veuillez prêter attention aux choses plus excitantes. D'autres articles connexes sur le site Web chinois de php !
Lecture recommandée :
Comment Python Numpy exploite les tableaux et les matrices
Python implémente la méthode de résolution du plus grand diviseur commun
Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!