В pandas я могу просто использовать pandas.io.parser.read_csv("file.csv", nrows=10000)
, чтобы получить первые 10000 строк файла csv.Получить последние 10000 строк файла csv
Но поскольку мой файл csv огромен, а последние строки более актуальны, чем первые, я бы хотел прочитать последние 10000 строк. Тем не менее, это не так просто, даже если я знаю длину файла, потому что если я пропущу первые 990000 строк из 1000000 строк csv-файла, используя pandas.io.parser.read_csv("file.csv", nrows=10000, skiprows=990000)
, также будет пропущена первая строка, содержащая заголовок файла. (header=0
измеряется после skiprows
применяется, так что это не помогает.)
Как получить последние 10000 строк из файла CSV с заголовком в строке 0, предпочтительно, не зная длину файла в строках ?
Вы используете систему Linux или OSX? Если это так, то использование 'tail -n 10000 file> file2', вероятно, будет самым простым ... – Carpetsmoker
Нажав на идею @Carpetsmoker, если вы настаиваете на использовании' Python', вы можете вызвать это на 'subprocess.call () ': P – Mai
@Carpetsmoker, но ему также нужен заголовок. Он должен быть как 'head -n 1 file> file2; tail -n 10000 file >> file2' –