При использовании пакета data.table я немного не уверен, когда мне нужно setkey(). Например, при использовании оператора := с опцией by все кажется очень быстрым, даже если я не установил ключ. Может кто-то прояснить, когда setkey() необходимо, а когда нет? И если это не нужно до вызова := с by, то как пакет data.table настолько быстр, что, предположительно, он должен делать то же самое, что и apply в стандартном data.frame R, делая последовательный поиск а не двоичный, поскольку он не знает, действительно ли мой data.table сортируется аргументом by.
Спасибо