Я заранее прошу прощения, если на этот вопрос есть простой ответ.Это похоже на то, что нужно, но я не могу найти его в файлах справки, выполнив поиск SO или Googling.
Я работаю с некоторыми наборами данных, которые имеют право на несколько ГБсейчас.Этого достаточно, чтобы поместиться в память на одном из узлов кластера, к которому у меня есть доступ, но загрузка занимает совсем немного времени.Для многих действий по отладке / программированию с этими данными мне не требуется загружать весь файл, только первые несколько тысяч наблюдений, которые имеют набор данных для тестирования кода.Я, конечно, могу просто прочитать весь файл и подмножество, но мне было интересно, есть ли способ сказать read.dta()
, что нужно читать только в первых N строках?Конечно, это было бы намного быстрее.
Я мог бы также использовать правильный формат, например .csv, а затем использовать аргумент nrows read.csv()
, но тогда я потерял бы метки фактора в наборе данных Stata (инеобходимо воссоздать несколько ГБ данных из чужого кода, который поступает в этот проект, поэтому предпочтительным является прямое решение для файлов .dta.