Satırların uzunluğunu önceden bilmeden bir dosyanın read_csv
yalnızca ilk n
satırlarını okumanın yerleşik bir yolu var mı ? Okuması uzun zaman alan büyük bir dosyam var ve ara sıra sadece ilkini, örneğin 20 satırını örnek almak için kullanmak istiyorum (ve tam olanı yüklemeyi ve başını almamayı tercih ediyorum).
Toplam satır sayısını bilseydim, buna benzer bir şey yapabilir footer_lines = total_lines - n
ve bunu skipfooter
arg anahtar kelimesine iletebilirdim . Mevcut çözümüm, n
python ve StringIO ile ilk satırları manuel olarak pandalara almaktır:
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))
O kadar da kötü değil, ancak anahtar kelimelerle veya başka bir şeyle bunu yapmanın daha kısa ve 'pandazik' (?) Bir yolu var mı?