C'est également une question qui se rapporte beaucoup à Python en tant qu'atelier de statistiques et à Excel en tant qu'atelier de statistiques . Je sais qu'il y a une énorme discussion sur Ruby contre Python mais ce n'est pas le point sur cette question. Je pensais que Ruby étant plus rapide que Python et ayant une syntaxe très naturelle pourrait me permettre de comprendre les statistiques et pourrait également être une bonne alternative à R (ce qui est également de mon intérêt et a été cité à mon autre question sur R ici). Par exemple, lors d'une des conférences Google Tech que j'ai vues (citée sur la question liée ici, l'instructeur se plaint que R est lent lors de la création d'une boucle for). Avec Ruby, il y a aussi Rails, donc peut-être qu'il y aurait la possibilité de réunir les deux aussi (Python a Django, mais encore une fois, je ne m'y attarde pas).
Donc, la question est la même, mais pour mon intérêt, dans Ruby:
Que pouvez-vous recommander si je voulais utiliser Ruby comme un "atelier de statistiques" pour remplacer R, SPSS, Python, Excel, etc.?
Qu'est-ce que je gagnerais et perdrais, selon votre expérience?
Veuillez noter que je considère cette question sur la base de la question précédente sur Python et Excel. Si vous pensez que l'utilisation de Ruby et Python (ou Excel) aurait le même impact, veuillez le dire et indiquer les arguments de toute question précédente, le but de cette question n'est pas de reproduire les questions précédentes pour les mêmes réponses. Je crois cependant qu'il y a des différences (comme la vitesse du langage et la syntaxe), mais j'aimerais aussi spécialement connaître les recommandations pour Ruby ou s'il y en a, par exemple, beaucoup moins de disponible que de dire pour Python ou Excel. Veuillez donc considérer les réponses précédentes pour ces questions très similaires mais pour d'autres langues / programmes.
Edit: Juste pour souligner que les réponses semblent aller dans le sens inverse, la réponse que je cherchais est une réponse telle que la réponse choisie à la question Python à laquelle j'ai lié. Il ne s'agit pas d'apprendre des statistiques avec Ruby. J'ai appris des statistiques avec le point sur la question R . Si c'est possible, super, mais je ne m'attends pas à apprendre des statistiques avec Ruby en même temps. Vous pouvez assumer des antécédents statistiques pour cette question.
Réponses:
J'utilise Ruby + R.
Vous pouvez lire l'article: RinRuby: Accéder à l'interpréteur R à partir de Pure Ruby
http://www.jstatsoft.org/v29/i04/paper
et ce blog:
http://rubyforscientificresearch.blogspot.com
http://sciruby.com/
(L'auteur de sciruby est également utilisateur de R.)
la source
RÉPONSE ANCIENNE (PRÉ-MODIFICATION):
Si vous pensez que vous apprendrez les statistiques en programmant tout vous-même, je dirais que vous êtes dans une longue besogne pleine de débogage et non d'apprentissage statistique. De plus, vous aurez besoin d'une langue comme R pour vérifier vos réponses de toute façon.
Je pense que user765195 a un point en termes de R étant plus difficile à déboguer que de nombreuses autres langues, ce qui est important, mais "pire"? Je ne pense pas.
ÉDITER:
Donc, si je peux résumer votre EDIT: étant donné que vous faites déjà des statistiques, et étant donné que vous voulez vraiment utiliser Ruby pour le faire au lieu d'un programme statistique réel (R, gretl, SAS, etc.), comment pouvez-vous vous faciliter la vie . Est-ce correct?
Je ne peux pas donner de réponse Ruby, mais je pense que la question générale devrait également être abordée. D'autant plus que vous vous référez à d'autres instanciations de la même question: "Je voudrais utiliser Python / perl / java / Clojure / C / pour faire des statistiques".
Je pense que la réponse sera toujours: "pourquoi utiliser un outil généralisé et primitif (statistique) pour faire un travail qu'un outil spécialisé fait beaucoup mieux?" Et je peux voir six réponses de base:
Je ne veux tout simplement pas apprendre une autre langue, et comme je connais bien Python / Ruby / Excel / Java, j'insiste pour utiliser cette langue.
Les statistiques que je veux faire doivent s'inscrire dans un projet plus grand (comme un outil basé sur le Web) et les outils utilisés par ce projet ne fonctionnent pas bien avec des outils externes, donc je dois utiliser Python / Ruby / Java. (Ou il peut s'agir de déployer une application et il n'est pas possible d'essayer de déployer des exécutables arbitraires.)
J'utiliserais un outil spécialisé, mais ceux auxquels j'ai accès (disons R, qui est gratuit) sont trop lents ou ne peuvent pas gérer les énormes ensembles de données / exigences en temps réel pour mon projet.
Mon employeur / client insiste pour que j'utilise un langage général Python / Ruby / Excel / Java. Je n'ai pas le choix et je cherche le moyen le moins douloureux de suivre cette exigence.
Par "statistiques", je veux dire des choses très simples comme trouver des moyennes / médianes, des variances, etc. loin de la moyenne?
Je fais quelque chose de très spécialisé et pour lequel même les packages statistiques comme R n'ont pas de packages / bibliothèques / fonctions. Ce n'est pas seulement à la pointe de la technologie, mais cela nécessite des performances très élevées, et je dois le faire à partir de zéro. (Ou peut-être utiliser des bibliothèques que j'ai déjà développées en langage X.)
À mon avis, la réponse 1 n'est pas bonne, la réponse 2 peut être légitime, mais peut contenir des solutions de contournement dont vous n'êtes pas au courant, la réponse 3 est plus susceptible d'être légitime mais peut également avoir des solutions de contournement, et pour les trois autres réponses j'espère que vous obtiendrez une meilleure réponse que la mienne.
la source
Quelques réflexions aléatoires:
la source