Nie jestem pewien, co próbowali, ale trzeba użyć parametru header
w np.savetxt
. Ponadto musisz poprawnie łączyć tablice. Najprostszym sposobem na to jest użycie np.c_
, która zmusza twoje tablice 1D do tablic 2D, a następnie łączy je w sposób, jakiego oczekujesz.
>>> time = np.array([0,60,120,180])
>>> operation1 = np.array([12,23,68,26])
>>> operation2 = np.array([100,123,203,301])
>>> np.savetxt('example.txt', np.c_[time, operation1, operation2],
header='Filexy\ntime operation1 operation2', fmt='%d',
delimiter='\t')
example.txt
zawiera teraz:
# Filexy
# time operation1 operation2
0 12 100
60 23 123
120 68 203
180 26 301
pamiętać także wykorzystanie fmt='%d'
uzyskać wartości całkowite w wyjściu. savetxt
zapisze domyślnie wartość float, nawet dla tablicy całkowitej.
Odnośnie ogranicznika, wystarczy użyć argumentu delimiter
. Nie jest to tutaj jasne, ale istnieją między nimi tabulatory. Na przykład vim
pokazuje mi klapki za pomocą kropek
# Filexy
# time operation1 operation2
0· 12· 100
60· 23· 123
120·68· 203
180·26· 301
Uzupełnienie:
Jeśli chcesz dodać nagłówki i dodać dodatkowy wiersz przed tablic, jesteś lepiej tworzenia niestandardowego nagłówka , uzupełnij o własne znaki komentarza. Użyj argumentu comment
, aby zapobiec dodawaniu dodatkowych #
.
>>> extra_text = 'Answer to life, the universe and everything = 42'
>>> header = '# Filexy\n# time operation1 operation2\n' + extra_text
>>> np.savetxt('example.txt', np.c_[time, operation1, operation2],
header=header, fmt='%d', delimiter='\t', comments='')
która produkuje
# Filexy
# time operation1 operation2
Answer to life, the universe and everything = 42
0 12 100
60 23 123
120 68 203
180 26 301
Nie zapomnij 'separator = '\ t'' –
Bardzo dziękuję! Jeszcze jedna rzecz -> jak mógłbym napisać w trzeciej linii (przed rozpoczęciem tablic) linii, która nie zaczyna się od # (w moim przypadku byłaby to tylko liczba) – Matias
Jeszcze raz dziękuję - próbowałem Twojego Addendum - ale brakowało mi extra_num :). Jeśli to możliwe, kod powinien wyglądać tak: pierwsza linia "#Filexy; druga linia" #time operation1 operation2; trzeci wiersz "42 (bez numeru), czwarty - koniec ...: tablice, dziękuję bardzo za pomoc! – Matias