Erreur de segmentation des données. C error: out of memory pandas python, gros fichier csv
J'ai un gros fichier csv de 3.5 go et je veux le lire en utilisant les pandas.
C'est mon code:
import pandas as pd
tp = pd.read_csv('train_2011_2012_2013.csv', sep=';', iterator=True, chunksize=20000000, low_memory = False)
df = pd.concat(tp, ignore_index=True)
J'obtiens cette erreur:
pandas/parser.pyx in pandas.parser.TextReader.read (pandas/parser.c:8771)()
pandas/parser.pyx in pandas.parser.TextReader._read_rows (pandas/parser.c:9731)()
pandas/parser.pyx in pandas.parser.TextReader._tokenize_rows (pandas/parser.c:9602)()
pandas/parser.pyx in pandas.parser.raise_parser_error (pandas/parser.c:23325)()
CParserError: Error tokenizing data. C error: out of
La capacité de ma ram est de 8 Go.
qu'en est juste
En plus de toutes les autres suggestions, vous devez également spécifier
mon ordinateur ne le supporte pas
Noobie la réponse ci-dessus est en utilisant encore plus de mémoire, parce que vous chargez un morceau et l'ajouter à ma liste (création d'une seconde copie des données). Vous devriez lire dans un morceau , de la traiter, stocker le résultat , puis continuer la lecture segment suivant. Aussi , dtype pour les colonnes de la réduction de la mémoire.
pd.read_csv('train_2011_2012_2013.csv', sep=';')
?En plus de toutes les autres suggestions, vous devez également spécifier
dtypes
.mon ordinateur ne le supporte pas
Noobie la réponse ci-dessus est en utilisant encore plus de mémoire, parce que vous chargez un morceau et l'ajouter à ma liste (création d'une seconde copie des données). Vous devriez lire dans un morceau , de la traiter, stocker le résultat , puis continuer la lecture segment suivant. Aussi , dtype pour les colonnes de la réduction de la mémoire.
OriginalL'auteur Amal Kostali Targhi | 2016-12-23
Vous devez vous connecter pour publier un commentaire.
essayer cette bro:
Chargé 3G CVS avec succès! Merci!
OriginalL'auteur ℕʘʘḆḽḘ
Vous pouvez essayer le réglage de error_bad_lines = False lors de l'appel du fichier csv c'est à dire
OriginalL'auteur Dutse I
Cette erreur peut aussi être causée par le chunksize=20000000. La diminution qui a résolu le problème dans mon cas.
Dans ℕʘʘḆḽḘ la solution de chunksize est également diminuée, ce qui pourrait avoir fait le tour.
Je voulais le faire mais n'ont pas assez de réputation. Voulais juste laisser cette info pour référence future, je n'ai pas trouvé quand j'ai été googler pour cette erreur
OriginalL'auteur Justas