Изменения

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

1587 байтов добавлено, 14:36, 5 апреля 2014
м
Импорт CSV
По результатам сравнения, можем заключить, что указание специфических аргументов функции <code>read.table()</code> позволяет существенно ускорить процесс импорта данных в формате CSV.
 
=== Функция <code>fread()</code> ===
 
Пакет {{r-package|data.table}}, помимо прочих полезных вещей, включает в себя функцию для чтения данных - <code>fread()</code>. Стоит отметить, что полученная в результате импорта переменная будет иметь класс <code>data.table</code>, что предполагает определённую специфику работы с ней<ref>Синтаксис работы с классом <code>data.table</code> отличен от синтаксиса работы с матрицами и таблицами данных в R.</ref>.
 
Сравним результаты работы функций <code>read.table()</code> и <code>fread()</code>:
 
{{r-code|code=<nowiki>> library(data.table)
> microbenchmark(defaults = read.table(tmp.csv, sep = ";", header = TRUE),
+ ompimize = read.table(tmp.csv, sep = ";", header = TRUE,
+ colClasses = c("integer", "integer", "factor", "numeric", "numeric", "numeric"),
+ nrows = N, comment.char = "", quote=""),
+ data.table = fread(tmp.csv, sep = ";", header = TRUE))
Unit: milliseconds
expr min lq median uq max neval
defaults 5344.4 8063.6 8513.6 8853.0 13602.0 100
ompimize 2839.3 2856.9 2896.7 3203.7 3573.5 100
data.table 526.6 528.2 535.9 578.2 932.3 100</nowiki>}}
 
== Примечания ==
 
<references />
[[Категория:R]]
[[Категория:Оптимизация кода]]