Po pierwsze, wiele z tych "pętli jest złym" wywodzi się z ciemnych wieków, kiedy pętle są w rzeczywistości mniej wydajne, w szczególności w niektórych wersjach S-Plus.
To powiedział, a gdy Twój komentarz o potrzebie dużego obiektu indeksu jest poprawna, można też użyć
funkcje z rodziny apply
takich jak sapply
, lapply
lub tapply
rozwinąć swoje struktury
stosunkowo nowy iterators pakiet który unika również dużą wektor wzmiance jako ograniczenie pamięci
the Ra 'accelerated R' variant and its jit package, które mogą znacznie przyspieszyć proste pętle.
Jako dodatkowy bonus, opcje jednego i dwóch dać drogę do równoległego wykonywania pętli na odpowiednich systemów przy użyciu narzędzi z pakietów CRAN śnieg, wielordzeniowych lub NWS żeby wymienić tylko kilka.
Dirk, czytałem niedawno artykuł Ihaka & Lang ("Powrót do przyszłości: Lisp jako baza dla systemu obliczeń statystycznych)", w którym pętle R porównują się niekorzystnie z Pythonem. Obaj są powolni w porównaniu do CLOS. Pytam dookoła, czy R stanie się "nie mniej podobnym" językiem funkcjonalnym. Jakie masz zdanie? – gappy
Brak wglądu tutaj, przepraszam. Z jednej strony masz dużą bazę użytkowników R i potrzebę kompatybilności wstecznej, z drugiej chcesz eksperymentować z nowymi funkcjami. Myślę, że zmiany będą tylko ewolucyjne, a nie rewolucyjne. –