R vs. Python vs. Julia
(towardsdatascience.com)-
Verimli kod yazmak için hangi dili kullanmak daha kolay?
-
Bir milyon tamsayıdan oluşan veri kümesinde istenen değeri bulmak için doğrusal arama ile üyelik testi üç dilde uygulanıyor ve C implementasyonu ile karşılaştırılıyor
Genel karşılaştırma
-
Julia'nın performansı C'ye yakın. Ancak R'ye benzer şekilde vektörleştirilmiş kod yazıldığında 3 kat daha yavaş oluyor
-
Python'a JIT (Numba) eklendiğinde döngü tabanlı implementasyonun performansı Julia'ya benziyor
-
Python'da native liste ile NumPy dizisi arasında hangisinin seçileceği ve Numba'nın ne zaman kullanılacağı iyi belirlenmeli
-
R en hızlısı olmasa da Python'a kıyasla daha tutarlı sonuçlar veriyor. (En hızlı implementasyona göre R 24 kat daha yavaşken, Python 343 kat daha yavaş. Julia ise yalnızca yaklaşık 3 kata kadar çıkıyor)
-
Native R her zaman Native Python'dan daha hızlı
-
Python veya R'de döngüden kaçınmak mümkün değilse, indeks tabanlı döngü yerine eleman tabanlı döngü daha verimli
1 yorum
Numba'nın yalnızca Numpy, diziler veya döngüler gibi durumlarda etkili olabilmesi ve dekoratör kullanmayı gerektirerek kodu karmaşıklaştırması bence kritik bir dezavantaj gibi görünüyor.
Daha Pandas'ı biraz karıştırınca bile performansla ilgili kusurlar ortaya çıkıyor.