Ich habe eine sehr große CSV-Datei, die mehr als 500 Millionen Zeilen hat.Extrahieren von Zeilen aus einer extrem großen (48 GB) CSV-Datei basierend auf Bedingung
Aber Ich brauche nur ein paar tausend Zeilen davon basierend auf einer bestimmten Bedingung. Ich bin zur Zeit mit:
with open('/home/Documents/1681.csv', 'rb') as f:
reader = csv.DictReader(f)
rows = [row for row in reader if row['flag_central'] == 1]
Hier ist die Bedingung, dass, wenn die flag_central == 1
, ich die Zeile benötigen.
Da die Datei jedoch extrem groß ist, kann ich den obigen Code nicht ausführen. Ich glaube, dass es wegen der for
Schleife ist, die ich verwende, die dieses Problem verursacht.
Gibt es auf jeden Fall kann ich diese bestimmten Zeilen aus der CSV-Datei basierend auf der oben genannten Bedingung extrahieren?
Verwenden Sie grep und filtern Sie, was Sie wollen, und es in Python pipe und lesen Sie es als CSV. – YOU
@YOU: Können Sie bitte ein Beispiel als Antwort posten? – ThePredator
Es ist nur ein Hinweis. – YOU