Вы можете попробовать большой файл, как уже предлагалось в комментариях.К сожалению, похоже, что fread
пока еще не реализовал такую функцию - см. эту открытую проблему (удаление этой функции может мотивировать разработчиков работать над ней).Но, как уже упоминалось здесь , если вы работаете в Linux, попробуйте команду оболочки shuf -n
:
library(data.table)
# Generate some random data
dt <- data.table(x = rnorm(10^6), y = rnorm(10^6))
# write to csv file
fwrite(dt, "test-dt.csv")
# Read a random sample of 10^5 rows
dt2 <- fread(cmd = "shuf -n 100000 test-dt.csv")
dt[, plot(x,y)]
В качестве альтернативы, вы можете прочитать блоки строк из файла с несколькими вызовамиfread
как показано здесь .