numpy.savetxt(fname, X, fmt='%.18e', delimiter=' ', newline='\n', header='', footer='', comments='# ', encoding=None)
: este método se utiliza para guardar una array en un archivo de texto.
Parámetros:
fname: si el nombre del archivo termina en.gz
, el archivo se guarda automáticamente en formato gzip comprimido. loadtxt entiende los archivos comprimidos con gzip de forma transparente.
X : [1D o 2D array_like] Datos que se guardarán en un archivo de texto.
fmt : un solo formato (%10.5f), una secuencia de formatos o una string multiformato, por ejemplo, ‘Iteración %d – %10.5f’, en cuyo caso se ignora el delimitador.
delimitador : string o carácter que separa las columnas.
newline : String o carácter que separa líneas.
header : String que se escribirá al principio del archivo.
pie de página : String que se escribirá al final del archivo.
comentarios: String que se antepondrá a las strings de encabezado y pie de página, para marcarlas como comentarios. Predeterminado: ‘#’, como se esperaba, por ejemplo, numpy.loadtxt.
codificación : Codificación utilizada para codificar el archivo de salida. No se aplica a los flujos de salida. Si la codificación es diferente a ‘bytes’ o ‘latin1’, no podrá cargar el archivo en versiones de NumPy < 1.14. El valor predeterminado es ‘latin1’.
Código #1:
# Python program explaining # savetxt() function import numpy as geek x = geek.arange(0, 10, 1) print("x is:") print(x) # X is an array c = geek.savetxt('geekfile.txt', x, delimiter =', ') a = open("geekfile.txt", 'r')# open file in read mode print("the file contains:") print(a.read())
Producción :
x is: [0 1 2 3 4 5 6 7 8 9] the file contains: 0.000000000000000000e+00 1.000000000000000000e+00 2.000000000000000000e+00 3.000000000000000000e+00 4.000000000000000000e+00 5.000000000000000000e+00 6.000000000000000000e+00 7.000000000000000000e+00 8.000000000000000000e+00 9.000000000000000000e+00
Código #2:
# Python program explaining # savetxt() function import numpy as geek x = geek.arange(0, 10, 1) y = geek.arange(10, 20, 1) z = geek.arange(20, 30, 1) print("x is:") print(x) print("y is:") print(y) print("z is:") print(z) # x, y, z are 3 numpy arrays with same dimension c = geek.savetxt('geekfile.txt', (x, y, z)) a = open("geekfile.txt", 'r')# open file in read mode print("the file contains:") print(a.read())
Producción :
x es:
[0 1 2 3 4 5 6 7 8 9]
y es:
[10 11 12 13 14 15 16 17 18 19]
z es:
[20 21 22 23 24 25 26 27 28 29]the file contains:
0.000000000000000000e+00 1.000000000000000000e+00 2.000000000000000000e+00 3.000000000000000000e+00 4.000000000000000000e+00 5.000000000000000000e+00 6.000000000000000000e+00 7.000000000000000000e+00 8.000000000000000000e+00 9.000000000000000000e+00
1.000000000000000000e+01 1.100000000000000000e +01 1.200000000000000000e+01 1.300000000000000000e+01 1.400000000000000000e+01 1.500000000000000000e+01 1.600000000000000000e+01 1.700000000000000000e+01 1.800000000000000000e+01 1.900000000000000000e+01
2.000000000000000000e+01 2.100000000000000000e+01 2.200000000000000000e+01 2.300000000000000000e+01 2.40000000000000000000E+01 2.500000000000000000E+01 2.600000000000000000E+01 2.7000000000000000ESE+01 2.800000000000000000E+01 2.900000000000000000ES+01
Código #3: Error de tipo
# Python program explaining # savetxt() function import numpy as geek x = geek.arange(0, 10, 1) y = geek.arange(0, 20, 1) z = geek.arange(0, 30, 1) print("x is:") print(x) print("y is:") print(y) print("z is:") print(z) # x, y, z are 3 numpy arrays without having same dimension c = geek.savetxt('geekfile.txt', (x, y, z))
Producción:
fh.write(asbytes(formato % tupla(fila) + nueva línea))
TypeError: solo las arrays de longitud 1 se pueden convertir a escalares de PythonDurante el manejo de la excepción anterior, ocurrió otra excepción:
% (str(X.dtype), formato))
TypeError: discrepancia entre el tipo de array (‘objeto’) y el especificador de formato (‘%.18e’)
Tenga en cuenta que si las arrays numpy no tienen la misma dimensión, se produce un error.
Publicación traducida automáticamente
Artículo escrito por ArkadipGhosh y traducido por Barcelona Geeks. The original can be accessed here. Licence: CCBY-SA