У меня есть DataTable «D» и я в настоящее время Подменю, как это:быстрее Подменю из data.table
d[d$time >= as.POSIXct("2016-01-01 00:31:13",tz="GMT") & d$category =="b" & num1==8 & num2>=4 & num3 ==7, ]
Какой самый быстрый способ подмножество строк таблицы данных? Можно ли это сделать быстрее?
спасибо.
Вот код:
times= as.POSIXct("2016-01-01",tz="GMT")+seq(1,2000,by = 1)
d =data.table(time= times, category1 = rep(c("a","b"),1000), num1=rep(c(2,8),1000), num2=rep(c(3,4),1000), num3=rep(c(5,7),1000))
setkey(d,time)#
d[d$time >= as.POSIXct("2016-01-01 00:31:13",tz="GMT") & d$category =="b" & num1==8 & num2>=4 & num3 ==7, ]
Я избавился от $, и все равно было такое же время – user3022875
Почему вы его подмножили? Просто взглянуть на результат? – Frank
@ Давид, что значит «вам не нужны все эти звонки». Мне нужно подмножество на этих столбцах. Забудьте о $, потому что это не улучшает производительность. Я использую system.time для проверки скорости. – user3022875