2013-03-16 10 views
5

Próbuję napisać tablicę numpy do pliku .txt przy użyciu numpy.savetxt. Aby najlepsze, co mogę powiedzieć, następujący kod następująco dokumentację:Ogranicznik numpy.savetxt

z = np.array([1,2,3]) 
np.savetxt('testdata.txt',z,delimiter='hi') 

Jednak plik wyjściowy, otwarty w Notatniku, pokazuje

1.000000000000000000e+002.000000000000000000e+003.000000000000000000e+00 

bez ogranicznika hi między wartościami. Jakieś pomysły, dlaczego tak się dzieje? Moim celem jest dodanie nowych linii między każdą wartością.

Odpowiedz

8

Potrzebujesz tablicy 2D, oś 0 jest rzędem, a oś 1 jest kolumną. Więc używam z[None, :] przekonwertować go na tablicy 2D:

from StringIO import StringIO 
s = StringIO() 
z = np.array([1,2,3]) 
np.savetxt(s,z[None, :],delimiter='hi') 
s.getvalue() 

wyjściowa:

1.000000000000000000e+00hi2.000000000000000000e+00hi3.000000000000000000e+00\n 
+2

Thanks HYRY. Masz pomysł, jak oddzielić wpisy przez nową linię? – Doubt

+0

+1 za użycie Brak jako wskaźnika 0 osi, aby wymusić zmianę rozmiaru! –

Powiązane problemy