A Python numpy modulja egy funkciót biztosít az adatok szöveges fájlból való betöltésére. A numpy modul biztosítja loadtxt() funkcióval, hogy az egyszerű szövegfájlok gyors olvasója legyen.
Megjegyzés: A szövegfájlban minden sornak ugyanannyi értéket kell tartalmaznia.
Szintaxis
numpy.loadtxt(fname, dtype=, comments='#', delimiter=None, converters=None, skiprows=0, usecols=None, unpack=False, ndmin=0)
Paraméterek
Ezek a következő paraméterek a numpy .loadtxt() függvényben:
fname: fájl, str vagy pathlib.Path
Ez a paraméter határozza meg az olvasandó fájlt, fájlnevet vagy generátort. Először is bontjuk a fájlt, ha a fájlnév kiterjesztése az .gz és .bz2 . Ezt követően a generátorok a következő bájtkarakterláncokat adják vissza Piton 3k.
dtype: adattípus (nem kötelező)
tostring metódus java
Ez a paraméter határozza meg az eredményül kapott tömb adattípusát, és alapértelmezés szerint az adattípus a float lesz. Az eredményül kapott tömb egydimenziós lesz, ha strukturált adattípus. Minden sor tömbelemként értelmeződik, és a használt oszlopok számának meg kell egyeznie az adattípus mezőinek számával.
megjegyzések: str vagy sorrend (opcionális)
Ez a paraméter határozza meg a megjegyzés kezdetének jelzésére használt karaktereket vagy karakterlistát. Alapértelmezés szerint ez lesz # '.
határoló: str (nem kötelező)
lista vs beállított java
Ez a paraméter határozza meg az értékek elválasztásához használt karakterláncot. Alapértelmezés szerint tetszőleges szóköz lesz.
konverterek: dict (opcionális)
Ez a paraméter egy szótári oszlopszám-leképezést határoz meg egy függvényhez, amely a leképezett oszlopot lebegővé alakítja. Ha az oszlop() egy dátum karakterlánc, akkor converters={0:datestr2num} . Ez a paraméter a hiányzó adatok alapértelmezett értékének megadására is szolgál konverterek= {3: lambda s: float(s.strip() or 0)} .
skiprows: int (nem kötelező)
Ez a paraméter az első „kihagyások” kihagyására szolgál, és alapértelmezés szerint 0 lesz.
kali linux parancsokat
usecols: int vagy szekvencia (opcionális)
Ez a paraméter határozza meg az olvasandó oszlopokat, ahol a 0 az első. Például a usecols=(0, 3, 5) kivonja az 1-etutca, 4thés 5thoszlop. Alapértelmezés szerint értéke None, ami azt eredményezi, hogy az összes oszlop beolvasásra kerül. Az új verzióban sor helyett egész számot használhatunk, ha egyetlen oszlopot szeretnénk olvasni.
kicsomagolás: bool (opcionális)
Ha ez a paraméter igazra van állítva, akkor a visszaadott tömb transzponálva lesz, így az argumentumok kicsomagolhatók a x, y, z =loadtxt(...) . A tömbök minden mezőhöz visszaküldésre kerülnek, ha strukturált adattípussal használják. Alapértelmezés szerint False értékre lesz állítva.
ndim: int (nem kötelező)
A visszaadott tömb 'ndmin' dimenziókkal rendelkezik. Ellenkező esetben összenyomja az egydimenziós tengelyt. Jogi értékek: 0 (alapértelmezett), 1 vagy 2.
párhuzamos feldolgozás
Visszatérés: ki (ndarray)
Adatokat olvas be a szöveges fájlból ndarray formájában.
1. példa:
import numpy as np from io import StringIO c = StringIO(u'0 1 2 3') c np.loadtxt(c)
Kimenet:
array([[0., 1.], [2., 3.]])
A fenti kódban
típusú java változókat
- Importáltuk a numpy-t np aliasnévvel.
- Importáltunk is StringIO tól től ez .
- Deklaráltuk a 'c' változót, és hozzárendeltük a StringIO() függvény visszaadott értékét.
- A függvényben átadtuk a unicode adatokat.
- Végül megpróbáltuk kinyomtatni a visszatérési értékét np.loadtxt() amelyben átadtuk a fájlt vagy fájlnevet.
A kimenetben a fájl tartalmát mutatja formában ndarray .
2. példa:
import numpy as np from io import StringIO d = StringIO(u'M 21 72 F 35 58') np.loadtxt(d, dtype={'names': ('gender', 'age', 'weight'),'formats': ('S1', 'i4', 'f4')})
Kimenet:
array([('M', 21, 72.), ('F', 35, 58.)], dtype=[('gender', 'S1'), ('age', ' <i4'), ('weight', '<f4')]) < pre> <h3>Example 3:</h3> <pre> import numpy as np from io import StringIO c = StringIO(u'1,3,2 3,5,4') x, y = np.loadtxt(c, delimiter=',', usecols=(0, 2), unpack=True) x y </pre> <p> <strong>Output:</strong> </p> <pre> array([1., 3.]) array([2., 4.]) </pre> <p> <strong>In the above code</strong> </p> <ul> <li>We have imported numpy with alias name np.</li> <li>We have also imported <strong>StringIO</strong> from <strong>io</strong> . </li> <li>We have declared the variable 'c' and assigned the returned value of the StringIO() function.</li> <li>We have passed the unicode data in the function.</li> <li>Lastly, we tried to print the return value of np.loadtxt in which we passed the file or filename, set delimiter, usecols, and unpack to True.</li> </ul> <p>In the output, it displays the content of the file has been shown in the form of ndarray.</p> <hr></i4'),>
Kimenet:
array([1., 3.]) array([2., 4.])
A fenti kódban
- Importáltuk a numpy-t np aliasnévvel.
- Importáltunk is StringIO tól től ez .
- Deklaráltuk a 'c' változót, és hozzárendeltük a StringIO() függvény visszaadott értékét.
- A függvényben átadtuk a unicode adatokat.
- Végül megpróbáltuk kinyomtatni az np.loadtxt visszatérési értékét, amelyben átadtuk a fájlt vagy a fájlnevet, beállítottuk a határolót, a usecols-t és a kicsomagolást True értékre.
A kimenetben a fájl tartalmát jeleníti meg ndarray formájában.