Escribir y leer números complejos usando numpy.savetxt y numpy.loadtxt
Necesito escribir y leer números complejos. Me gustaria usarnumpy.savetxt
ynumpy.loadtxt
para hacerlo Como el código que he escrito es bastante grande, creé un archivo de prueba para intentar escribir y leer números complejos.
Hasta ahora he podido escribir números complejos usandonumpy.savetxt
. El código es el siguiente:
import numpy
d1 = -0.240921619563 - 0.0303165074169j
d2 = -0.340921619563 - 0.0403165074169j
d3 = -0.440921619563 - 0.0503165074169j
d4 = -0.540921619563 - 0.0603165074169j
array = numpy.array([d1, d2, d3, d4])
save = open("test.dat", "w")
numpy.savetxt(save, array.reshape(1, array.shape[0]), newline = "\r\n", fmt = "%.10f")
save.close()
Esto da el siguiente resultado:
(-0.2409216196+-0.0303165074j) (-0.3409216196+-0.0403165074j) (-0.4409216196+-0.0503165074j) (-0.5409216196+-0.0603165074j)
Todo lo que ahora quiero poder hacer es leer / cargar los datos. El guión que tengo es:
import numpy
d = numpy.loadtxt("test.dat")
Este código no es suficiente y actualmente no puedo cargar los datos. Mi problema es similar aéste. Sin embargo, al reemplazar manualmente el+-
por un-
Todavía no puedo cargar los datos. Creo que la solución está endtype
opción paranumpy.loadtxt
. Sin embargo, no he podido resolverlo.
¡Tu ayuda es muy apreciada!