Existe-t-il un moyen intégré à utiliser read_csv
pour lire uniquement les premières n
lignes d'un fichier sans connaître la longueur des lignes à l'avance? J'ai un gros fichier qui prend beaucoup de temps à lire, et je ne veux parfois utiliser que les 20 premières lignes, disons, pour en obtenir un échantillon (et je préfère ne pas charger le tout et en prendre la tête).
Si je connaissais le nombre total de lignes, je pourrais faire quelque chose comme footer_lines = total_lines - n
et passer ceci au skipfooter
mot - clé arg. Ma solution actuelle est de récupérer manuellement les premières n
lignes avec python et StringIO pour les pandas:
import pandas as pd
from StringIO import StringIO
n = 20
with open('big_file.csv', 'r') as f:
head = ''.join(f.readlines(n))
df = pd.read_csv(StringIO(head))
Ce n'est pas si mal, mais y a-t-il une façon plus concise, «pandasique» (?) De le faire avec des mots-clés ou quelque chose?