J'ai un très grand ensemble de données et je ne peux pas me permettre de lire l'intégralité de l'ensemble de données. Donc, je pense en lire un seul morceau pour m'entraîner, mais je ne sais pas comment le faire. Toute pensée sera appréciée.
Réponses:
Si vous souhaitez lire uniquement les 999 999 premières lignes (sans en-tête):
read_csv(..., nrows=999999)
Si vous voulez seulement lire les lignes 1 000 000 ... 1 999 999
read_csv(..., skiprows=1000000, nrows=999999)
nrows : int, default None Nombre de lignes du fichier à lire. Utile pour lire des morceaux de gros fichiers *
skiprows : comme une liste ou un entier Numéros de ligne à sauter (indexés à 0) ou nombre de lignes à ignorer (entier) au début du fichier
et pour les fichiers volumineux, vous voudrez probablement également utiliser chunksize:
chunksize : int, default None Renvoie l'objet TextFileReader pour l'itération
nstart=,nend=...
. Vous devez faire l'arithmétique surskiprows = nend - nrows
LIMIT nstart, skiprows
:: /
header=n/list
chunksize
est un peu pénible, vous devez faire face à des morceaux de taille inégale. Préallouez également vos tableaux / dataframes avec la taille fixe dont vous savez avoir besoin, ne faites pas dynamiquement concat / append chaque fois que vous pouvez l'éviter.