numpy.loadtxt() w Pythonie
numpy.load()> w Pythonie służy do ładowania danych z pliku tekstowego, w celu szybkiego odczytu prostych plików tekstowych.
Należy pamiętać, że każdy wiersz w pliku tekstowym musi mieć tę samą liczbę wartości.
Składnia: numpy.loadtxt(fname, dtype=’float’, komentarze=’#’, delimiter=Brak, konwertery=Brak, skiprows=0, usecols=None, unpack=False, ndmin=0)
Parametry:
imię: Plik, nazwa pliku lub generator do odczytania. Jeśli rozszerzenie nazwy pliku to .gz lub .bz2, plik jest najpierw dekompresowany. Zauważ, że generatory powinny zwracać ciągi bajtów dla Pythona 3k.
typ d: Typ danych wynikowej tablicy; domyślnie: pływak. Jeśli jest to ustrukturyzowany typ danych, wynikowa tablica będzie jednowymiarowa, a każdy wiersz będzie interpretowany jako element tablicy.
ogranicznik: Ciąg używany do oddzielania wartości. Domyślnie jest to dowolna spacja.
konwertery: Słownik mapujący numer kolumny na funkcję, która przekonwertuje tę kolumnę na liczbę zmiennoprzecinkową. Np. jeśli kolumna 0 jest ciągiem daty: konwertery = {0: datestr2num}. Wartość domyślna: Brak.
przeskoki: Pomiń pierwsze linie przeskoków; domyślnie: 0.Zwroty: ndarray
Kod nr 1:
# Python program explaining> # loadtxt() function> import> numpy as geek> > # StringIO behaves like a file object> from> io> import> StringIO> > c> => StringIO(> '0 1 2
3 4 5'> )> d> => geek.loadtxt(c)> > print> (d)> |
Wyjście :
[[ 0. 1. 2.] [ 3. 4. 5.]]
Kod nr 2:
# Python program explaining> # loadtxt() function> import> numpy as geek> > # StringIO behaves like a file object> from> io> import> StringIO> > c> => StringIO(> '1, 2, 3
4, 5, 6'> )> x, y, z> => geek.loadtxt(c, delimiter> => ', '> , usecols> => (> 0> ,> 1> ,> 2> ),> > unpack> => True> )> > print> (> 'x is: '> , x)> print> (> 'y is: '> , y)> print> (> 'z is: '> , z)> |
Wyjście :
x is: [ 1. 4.] y is: [ 2. 5.] z is: [ 3. 6.]
Kod nr 3:
# Python program explaining> # loadtxt() function> import> numpy as geek> > # StringIO behaves like a file object> from> io> import> StringIO> > d> => StringIO(> 'M 21 72
F 35 58'> )> e> => geek.loadtxt(d, dtype> => {> 'names'> : (> 'gender'> ,> 'age'> ,> 'weight'> ),> > 'formats'> : (> 'S1'> ,> 'i4'> ,> 'f4'> )})> > print> (e)> |
Wyjście :
[(b'M', 21, 72.) (b'F', 35, 58.)]