Que peut faire MATLAB que R ne peut pas faire?



Answers

R est un environnement pour l'analyse de données statistiques et graphiques. Les origines de MATLAB sont dans le calcul numérique. Les implémentations de langage de base ont de nombreuses caractéristiques communes si vous les utilisez pour la manipulation de données (par exemple, les opérations matricielles / vectorielles).

R a des fonctionnalités statistiques difficiles à trouver ailleurs (> 2000 Packages sur CRAN ), et beaucoup de statisticiens l'utilisent. D'autre part, MATLAB a beaucoup de boîtes à outils (coûteuses) pour des applications d'ingénierie comme

  • traitement d'image / acquisition d'image,
  • conception de filtre,
  • logique floue / contrôle flou,
  • équations différentielles partielles,
  • etc.
Question

J'entends souvent des gens se plaindre à quel point les licences MATLAB sont chères. Ensuite, je me demande pourquoi ils n'utilisent pas seulement Octave ou R Mais est-ce que ce dernier est juste? Pouvez-vous utiliser R pour remplacer MATLAB?




Réponse courte: non, bien sûr que non. Alors que n'importe quel ensemble de progiciels mathématiques aura ses chevauchements, ils auront toujours des biais envers certains domaines problématiques. Ces biais sont très importants si vous voulez ou non utiliser l'un de ces paquets.

Un exemple de ce que MATLAB peut faire que R ne peut pas faire est l'interface avec le matériel en temps réel pour le traitement / l'acquisition et le contrôle du signal. Un modèle Simulink dans MATLAB peut être configuré pour fonctionner en simulation sur votre machine avant de compiler le code pour exécuter sur un système réel en prenant des données mesurées en entrée et en calculant des sorties appropriées (ce qui était avant qu'une simulation de système de contrôle fonctionne pleinement un). Avec la carte matérielle appropriée dans votre machine, vous pouvez exécuter des systèmes de contrôle en temps réel via un PC.

R, en revanche, semble fermement placé dans le rôle de la statistique, où je suis sûr que cela surpasse ce que MATLAB peut faire. De même, Mathematica est meilleur que MATLAB en mathématiques symboliques; Python est meilleur que MATLAB à la programmation générale; gnuplot est meilleur que tous pour créer des graphiques (euh, je suppose); etc.




En tant qu'utilisateur de MATLAB et R, je pense que ce sont des applications très différentes. J'ai moi-même une formation en informatique, etc. et je ne peux m'empêcher de penser que R est par des statisticiens pour des statisticiens alors que MATLAB est par des programmeurs pour des programmeurs.

R rend très facile la visualisation et le calcul de toutes sortes de choses statistiques mais je ne l'utiliserais pas pour mettre en œuvre quoi que ce soit de traitement de signal lié si cela ne tenait qu'à moi.

Pour résumer, si vous voulez faire des statistiques, utilisez R. Si vous voulez programmer, utilisez MATLAB ou un langage de programmation.




Nous ne pouvons pas parce que c'est prévu / requis par nos clients.




Un grand avantage de MATLAB sur R est la qualité de la documentation MATLAB. R, étant open source, souffre à cet égard d'une caractéristique commune à de nombreux projets open source.

R est cependant un environnement et un langage très utiles. Il est largement utilisé dans la communauté bioinformatique et possède de nombreux paquets utiles dans ce domaine.

Une alternative à R est Octave ( http://www.gnu.org/software/octave/ ) qui est très similaire à MATLAB, il peut exécuter des scripts MATLAB.




Links