Изменения

R:Оптимизация/Импорт данных

85 байтов убрано, 09:08, 7 апреля 2014
м
Функция read.table
{{r-code|code=<nowiki>> tmp.csv <- tempfile(fileext=".csv") # генерируем имя и путь для временного файла
> write.tablecsv2(DF, tmp.csv, sep = ";", row.names = FALSE)</nowiki>}}
Размер полученного файла составил:
Теперь мы можем сравнить производительность функции <code>read.table()</code> с параметрами по умолчанию и парамтерами, рекомендованными для увеличения производительности данной функции. Для этого нам понадобится пакет {{r-package|microbenchmark}}.
{{r-code|code=<nowiki>> microbenchmark(defaults = read.tablecsv2(tmp.csv, sep = ";", header = TRUE),+ ompimize = read.tablecsv2(tmp.csv, sep = ";", header = TRUE, nrows = N, comment.char = "", + colClasses = c("integer", "integer", "factor", "numeric", "numeric", "numeric")))
Unit: seconds
expr min lq median uq max neval
Обратим внимание на то, что результат работы сравниваемых вариантов функции <code>read.table()</code> абсолютно идентичен.
{{r-code|code=<nowiki>> identical(read.tablecsv2(tmp.csv, sep = ";", header = TRUE),+ read.tablecsv2(tmp.csv, sep header = TRUE, nrows = N, comment.char = ";", header = TRUE,+ colClasses = c("integer", "integer", "factor", "numeric", "numeric", "numeric"),+ nrows = N, comment.char = ""))
[1] TRUE</nowiki>}}