J'aimerais savoir comment apprendre le langage R en tant que langage de «programmation» plutôt que de l'apprendre en tant que système statistique. Ma question est suscitée par un manque de compréhension de fonctions telles que l'analyse, l'évaluation, etc. qui peuvent ne pas être utilisées fréquemment par un utilisateur R avec une persuasion «statistique».
Edit: J'ai exploré des outils tels que Rpy RSPerl rJava et je souhaite (au moins) pouvoir comprendre les concepts qui facilitent la communication de R avec d'autres langages de programmation.
La disponibilité des applications Web pour R (R-PHP, RApache, etc.) est un autre facteur de motivation pour moi d'acquérir une compréhension plus profonde et plus structurelle de R.
Dernier point mais non le moindre, j'aimerais pouvoir écrire des packages R pour lesquels une telle compréhension serait bénéfique sinon nécessaire.
Réponses:
Pour commencer, vous voudrez peut- être consulter cet article de John Cook . Assurez-vous également de lire "The R Inferno" .
Il existe de nombreuses bonnes ressources sur la page d'accueil de R , mais en particulier, lisez «Une introduction à R» et «La définition du langage R» .
Quelques questions de stackoverflow très étroitement liées:
Mon livre préféré sur le sujet: "Software for Data Analysis: Programming with R", par John Chambers , le créateur du langage S.
la source
Un bon livre pour apprendre R-en tant que langage de programmation (par opposition à R-pour-statistiques) est The Art of R Programming , de Norman Matloff.
Il est très lisible, ne suppose pas que vous êtes un informaticien, et est assez bon marché comme les livres R.
la source
Je suggérerais plutôt un bon début complet, comme The R Book de Michael Crawley. C'est un livre complet et facile à lire sur les fonctions principales de R, avec des conseils statistiques et quelques exercices. Il se concentre beaucoup sur les forces R (par exemple les modèles linéaires) et donne également des astuces de codage utiles. Cela m'a beaucoup aidé pendant que je luttais sur des cours en ligne cryptiques.
la source
Je suis un apprenant très pratique, donc ces conseils peuvent être spécifiques à mon style d'apprentissage. Je suggérerais que le meilleur endroit pour commencer «apprendre à programmer» dans n'importe quelle langue consiste à trouver des problèmes en dehors de votre gamme normale d'expérience et ensuite à essayer de les résoudre en utilisant un langage de programmation.
Les projets qui m'ont le plus appris sur la programmation
R
n'avaient rien à voir avec les statistiques.Connaître des fonctions comme
parse()
eteval()
n'est en aucun cas une mesure pour être "un bon programmeur R". Les applications qui nécessitent une utilisation intensive de ces fonctions ne représentent pas la majorité de l'espace de problème dans lequel vous pouvez postulerR
. Au lieu de cela, je pense que vous devriez essayer d'être "un bon programmeur" qui saitR
. Cela implique d'affiner vos approches de résolution de problèmes.La programmation n'est pas un sport pour les spectateurs - un bon livre est indispensable comme référence sur les outils disponibles, mais vous devez trouver des problèmes sur lesquels perfectionner vos compétences.
la source