Mat araştırma. paketler - sayfa 3

 
Alexey Volchanskiy :

Harika, ilk gün için yavaş yavaş R öğreniyorum, lütfen soruları cevaplayın, R ve Matlab'ın yeteneklerini karşılaştırmak istiyorum. Sadece holivarsız, dikkatli ve sakince :).

  1. R, OOP özelliklerine sahip bir dil midir?
  2. MQL4/5'ten doğrudan kullanım için R'de 32-bit ve 64-bit dll yapabilir miyim? Öyleyse, kullanıcının bilgisayarında bu tür dll'leri kullanmak için hangi boyutta paket kurulmalıdır?
  3. R'den doğrudan erişim için ortak DB'leri bağlayabilir miyim?
  4. R'de bir Simulink eşdeğeri var mı?
  5. Neden tüm incelemeler R'nin bir istatistik programı olduğunu vurguluyor? DSP ile ilgileniyorum, R'de DSP için paketler var mı?
  6. R, Matlab'daki .mat dosyalarına benzer, verileri depolamak için yerleşik bir kompakt biçime sahip mi?

1. Evet. Farklı programlama dillerini karşılaştırmak, ödüllendirici bir iş değildir, çünkü bazı araçların kullanımı ve diğerlerinin kullanılmaması genellikle programcının zevkine bağlıdır.

Ben bir R uzmanı değilim, ancak şunu not edeceğim:

R'de "skaler" kavramı yoktur. Bu uzunluk 1 vektörüdür. aritmetik matris işlemlerine dayanır. kod satırı C= A+B bir matris işlemi çağırabilir

R'de "nesne" kavramı mantıksal sonucuna getirilir: bir vektör, bir matris, bir program matrisi ve genel olarak kullanıcının programının yürütüldüğü ortam olabilir.

R'de, yalnızca yürütme bilgisayarının işlemcilerini ve çekirdeklerini değil, aynı zamanda yerel ağdaki komşu bilgisayarları da yükleyen programlar yazmak oldukça kolaydır.

...

2. Bilgim cevap vermeye yetmiyor. Bu imkansız görünüyor. Bu, ilk tanışmada bir tercüman olan R'nin yapısının özelliklerinden kaynaklanmaktadır. Ama bu yüzeysel bir görüş. Gerçek şu ki, R, C ile iyi belgelenmiş bir arayüze sahip bir simbiyozdur. R'nin ana gücü paketlerdir (7.000 binin üzerinde, yaklaşık 120.000 işlev içerir) ve bu paketler genellikle C veya Fortran'daki programlara çağrılardır. Gerçek şu ki, R, hesaplama açısından yoğun tüm işlemler için C ve Fortran kitaplıklarını kullanır.

R, API'lere çok fazla odaklanıyor, ancak benim beceri setimin ötesinde

3. Evet

4. Öyle görünmüyor. Aynı olmasa da, bir GUI oluşturmak için bir dizi araç (hazır olanların yanı sıra) vardır. Bu noktada, R'de yaygın olarak geliştirilen ve geleneksel programlama dillerinde bulunmayan araçlardan bahsetmek istiyorum: bunlar, modellerin istatistiksel olarak test edilmesi için yöntemlerdir. İstatistiksel testlerin sonuçlarını işlemek için araçlar çok gelişmiş ve gelişmiştir. R'de şu soruyu kolayca cevaplayabilirsiniz: "100 gözlemlik bir örnekte ortalama matematiksel beklentiden ne kadar farklıdır?"

5. İstatistik ve en geniş anlamıyla, R'nin bir özelliğidir. İstatistiklerle çalışırken temel olan grafik araçlarını unutmayın. R araçlarına genel bir bakış için siteyi ziyaret edin, tematik paket koleksiyonları var.

6. Karşılaştırma yapılamaz. Ama "bayt kodu" var. Ama bu farklı. Birkaç bin satır kod içeren bir R programı egzotiktir. Tipik bir R programı, paket fonksiyonlarına yapılan çağrılardır.

 
Alexey Volchanskiy :
Matlab programlarımdan birini R'ye çevirmeye çalışmalıyım, hızı karşılaştırmalıyım. Hafta sonu çözebilirsem, yapacağım ve abonelikten çıkacağım. Matlab oldukça yavaş, C# veya C++ ile bir çok şey yapıyorum ve hız için DLL olarak bağlıyorum.

R'nin kendisi üçlü frenlidir. Bu bir tercüman. Hata ayıklamada hiç sorun yok, ilk başta hata ayıklayıcıyı kullanmaya başladım ve sonra işe yaramaz olduğu ortaya çıktı.

R hızı hakkında konuşursak, o zaman birkaç husus var.

1. bayt koduna çevrilebilir, ancak bu bir kümes hayvanı

2. Hesaplama açısından yoğun işlemler için paketlerin hız nedeniyle seçilen kitaplıkları kullandığını unutmayalım.

3. kütüphane matris işlemi için kullanılır

4. Matris işlemleri için döngü operatörlerine gerek yoktur

5. Tüm çekirdekler yükleniyor. Algoritmanın izin verdiği her yerde standart ve çok basit.

Genel olarak, programları dilden dile yeniden yazarak karşılaştırmak - her iki dildeki bilginiz aynıysa işe yarar.

 
Alexey Volchanskiy :
Matlab programlarımdan birini R'ye çevirmeye çalışmalıyım, hızı karşılaştırmalıyım. Hafta sonu çözebilirsem, yapacağım ve abonelikten çıkacağım. Matlab oldukça yavaş, C# veya C++ ile bir çok şey yapıyorum ve hız için DLL olarak bağlıyorum.

Görüyorsunuz, önemsiz olmayan bir şeyi sayarsanız, bir paket kullanıyor olacaktır. Paket "artı" olarak yazılırsa uçar. Değilse, o zaman taranabilir.

Kendi deneyimimiz üzerinde test edilmiştir: data.frame öğelerini (bu, veri tiplerinin değişebileceği bir dizidir) bir döngü içinde yinelemeye çalışırsanız ve bunlar üzerinde bir şeyler hesaplarsanız, o zaman Aşırı uzun olabilir. Özel paketler kullanmazsanız, R büyük dizilerde hesaplama yapmakta çok yavaştır.

Ancak her zaman ihtiyacım olan hesaplamanın uygulandığı bir kitaplık vardır ve örneğin rollapply(x$V1, ortalama) çağırabilir ve dizi öğelerinden sıkıcı uzun geçişler yerine tüm öğelerdeki hareketli ortalamayı hesaplayabilirim. her zamanki gibi.

 
СанСаныч Фоменко :


5. Tüm çekirdekler yükleniyor. Algoritmanın izin verdiği her yerde standart ve çok basit.


SanSanych, bunu açıklayabilir misin? R'de paralellik hissettik ve özel pakette aksi belirtilmedikçe, açıkça Bir çekirdek yüklediği sonucuna vardık (4 çekirdeğin tamamında %25 yük gibi görünüyor).
 
СанСаныч Фоменко :

R'nin kendisi üç kez frenlenir...


O zaman bu yazılımın kapsamı nedir? Çin tüketim malları satan bir butik için etkili bir ürün yelpazesini analiz etmek için mi?
 
СанСаныч Фоменко :

... R'nin ana gücü paketlerdir (7.000'den fazla, yaklaşık 120.000 işlev içerir)...

Ve istikrarlı bir kâr elde etmek için kaç paket ve işlev gerekli ve yeterli?

R başarısız olursa hangi yazılımda daha fazla ustalaşacağız?

 
Alexey Burnakov :
SanSanych, bunu açıklayabilir misin? R'deki paralelliği hissettik ve özel pakette aksi belirtilmedikçe, bir çekirdek yüklediği (4 çekirdeğin hepsinde %25 yük gibi görünüyor) açıkça sonucuna vardık.
Paralel hesaplama çok gelişmiş bir şey, birçok yayını var, örneğin ek.
Dosyalar:
parallel.zip  387 kb
 
Dmitry Fedoseev :

O zaman bu yazılımın kapsamı nedir? Çin tüketim malları satan bir butik için etkili bir ürün yelpazesini analiz etmek için mi?

Lütfen yazımı baştan sona okuyun.

Eğer ekleyin.

R'nin kendisi hakkında yazdığımda, gerçek R kodunun gerçek R metninin sadece küçük bir kısmından oluştuğunu unutmamak gerekir.

En basit örnek.

Gönderi: A=B

A ve B skaler ise, büyük olasılıkla MCL'deki kod daha hızlı çalışacaktır.

Ancak R'de skaler yoktur: A ve B en azından vektörlerdir. MKL'de bunlar döngülerdir, R'de herhangi bir döngü olmadan yazılır ve bir paketin parçası olarak uygulanır, bugün için verimlilik açısından en üstte olan matris hesaplamaları. Ve eğer R ve MCL'yi matris hesaplamalarıyla karşılaştırırsak, o zaman R temelde daha verimli olacaktır.

R'de yazılmayan kullanıma hazır verimli kod parçalarını kullanmak genel bir R ilkesidir - özel kitaplıklar mevcut değilse genellikle C'de.

Alt satır: R, dahili rutinler ve paralel hesaplama kullanımı yoluyla hesaplama açısından verimlidir

 
Event :

Ve istikrarlı bir kâr elde etmek için kaç paket ve işlev gerekli ve yeterli?

R başarısız olursa hangi yazılımda daha fazla ustalaşacağız?

Bireysel bir tüccarın ihtiyaçları için yedekli yazılımımız var.

Bugün R, en geniş anlamda istatistik alanında en iyi yazılımdır. Örneğin, geleneksel olarak yapay zeka olarak adlandırılan makine öğrenimi yöntemleri, R'de geniş ölçüde temsil edilmektedir.

Bir nüans daha var.

Bu alanda çalan son bip, bir R paketi şeklinde gelir ve işte bu yüzden. Bugün, istatistik alanındaki bilimsel yayınlar, formüllere ek olarak, genellikle R'de bir kod içerir, tabiri caizse, iyi bir mauvais tonunun bir işaretidir. Ve makaledeki R kodundan R içindeki tam teşekküllü bir pakete kadar bir adım var.

Buna R ile bağlantılı her şeyin bir dünya partisi olduğu da eklenmelidir. R depolarına bir paket yerleştirmek, paketin yazarını R içinde küresel bir ünlü yapar. R, kullanım kısıtlaması olmayan ücretsiz ve açık kaynaklı bir sistemdir. R'nin önceki ücretli liderlerden dünya liderliğini ele geçirmesine izin veren R'nin bu özelliğidir - SAS, SPSS, peki, python dili hala karıştı.

Boşuna değil, yaklaşık bir yıl önce Microsoft, R - devrimci analitiklerin ücretli bir sürümünü edinerek R'ye girdi ve şimdi aktif olarak tanıtıyor.

 
СанСаныч Фоменко :
Paralel hesaplama çok gelişmiş bir şey, birçok yayını var, örneğin ek.
Büyük Merhamet.