Vernier andmekoguja võib anda sellise tekstifaili, kuhu on kirjutatud
üksteise järel mitu massiivi. Selliseid andmeid saab endiselt lugeda funktsiooniga
pandas.read_csv
, kui kasutada parameetreid skiprows
ja nrows
. Esimene näitab, mitu rida faili alguses
ära jätta, ja teine näitab, mitu sellele järgnevat rida lugeda. Oletagem
näiteks, et meil on teada esimese ja viimase rea järjekorranumbrid
(seda võib järgi vaadata mõne reanumbreid näitava koodiredaktoriga, nagu
Notepad++).
from pandas import read_csv
esimene, viimane = 8, 5008
andmed = read_csv('andmed.txt',
skiprows = esimene - 1,
nrows = viimane - esimene + 1,
decimal = ',',
delimiter = '\t',
usecols = (0, 1, 2),
dtype = float,
header = None).values
On ka mõeldav, et mõni andur ei suuda nõutud kiirusega mõõta. Sel juhul
vastavas andmetulbas on mingi osa andmevälju tühjad. read_csv
endiselt suudab lugeda selle massiivi
arvulisel kujul, aga nendel kohtadel, kus andmed puuduvad, saab olema
spetsiaalväärtus NaN (Not a Number). Need
read tuleb kõrvaldada, kontrollides selle tulba elemente näiteks funktsiooniga
np.isfinite
. Oletagem näiteks, et puuduvad väärtused on kolmandas
tulbas (ehk tulbas indeksiga 2):
olemas = np.isfinite(andmed[:,2])
andmed = andmed[olemas]