Question Structure d'un cours de R pour débutants


Je me rends compte que cette question n’aura probablement pas de meilleure réponse, et qu’elle pourrait être fermée en tant que telle, mais je pense que cela pourrait donner des réponses très utiles.

Supposons que vous deviez donner un cours sur R pour terminer les débutants et que vous ayez peu de temps pour le faire, vous devez donc faire des choix dans ce que vous insistez. C'est génial, les jeunes esprits innocents de se plier à notre volonté! Mais comment faisons-nous cela?

Comment pouvons-nous au mieux mettre en place un cours R pour les débutants absolus afin qu'ils deviennent des utilisateurs efficaces de R. Nous voulons qu'ils fassent tout ce qui est juste et efficace, mais nous voulons bien sûr qu'ils puissent faire encore plus. Voici quelques problèmes qui me viennent à l'esprit:

  • Le retrait et l'utilisation de styles de codage appropriés sont très importants. Est-ce que ce devrait être la première chose à venir? Avant même de regarder comment affecter des objets?
  • Boucles vs applique vs vectorisations, sur quoi insistez-vous en premier? Je pense que les boucles sont si faciles à apprendre et simples à mettre en évidence qu’elles ne produiront peut-être pas un code très efficace, mais qu’elles pourront fonctionner! Là encore, le fait de souligner immédiatement les vectorisations pourrait les amener à être plus efficaces à long terme.
  • Laissez-les utiliser RStudio depuis le début?
  • Quel serait un bon ordre pour introduire des choses?

38
2018-06-20 12:36


origine


Réponses:


La première chose que vous voulez faire dans un cours de courte durée est d’intéresser et de motiver les élèves - vous pouvez transmettre très peu d’informations en 3 ou 4 heures, mais vous pouvez motiver vos élèves à en apprendre davantage. Je recommanderais de choisir un sujet d'intérêt pour votre communauté et de leur montrer comment R peut les aider à se taper dessus dans ce domaine. Couper impitoyablement - vous voulez déterminer le chemin minimum absolu qui vous permettra de ne rien savoir de R et d'être capable de faire quelque chose d'utile, quelque chose qui pousse vos élèves à dire "wow, c'est cool". Pour moi, j'utilise des graphiques - en 3 heures, vous pouvez enseigner les bases de ggplot2 (diagrammes de dispersion, histogrammes, esthétique et facettage), offrant aux étudiants une boîte à outils puissante pour l'exploration de données.

Je recommande d'utiliser RStudio. Je ne recommanderais pas de parler de style de code, de vectorisation ou même probablement de boucles.


44
2018-06-20 13:03



Pour réitérer les points que d'autres ont abordés:

1) Ne pas enseigner à R. Enseigner "résoudre un problème" et les aider à utiliser R pour le faire.

2) N'essayez pas de les impressionner avec ce que vous ou quelqu'un d'autre pouvez faire avec R. Souhaitez-leur ce qu'ils peuvent faire avec un peu de R.

3) Canal un peu de Kathy Sierra. L'objectif final n'est pas que le cours soit efficace en 3 ou 4 heures. Le but ultime est d’aider la classe à donner un petit coup de pied et à penser que R les aidera à faire plus de cul dans le futur. La valeur qu'ils attribuent à R sera la valeur actuelle nette de tout ce qu'ils peuvent imaginer. Je suis sûr qu'il existe un paquet R pour calculer la valeur actuelle nette des coups de pieds.


31
2018-06-20 15:21



+1 pour la réponse de hadley. Je suis totalement d'accord: la motivation est la clé. Et c'est tout ce que vous pouvez faire en quelques heures. C'est comme montrer aux enfants gros comment perdre du poids. Il y a des tonnes de façons de le faire. Aucun d'entre eux ne perdra probablement beaucoup de poids au cours d'une séance de 3 heures, mais vous pouvez lui montrer qu'il est amusant de perdre du poids et que tout le monde doit continuer à travailler seul. Cela étant dit, je pense que la mise au point est importante, mais vous devriez les montrer:

Montrez-leur que le ciel est la limite: montrez stockplot ou la web ggplot2 par exemple, afficher un petit élément de connexion à la base de données, par ex. RMySQL (sans entrer dans les détails), affichez-les ggplot2. Vous pouvez également montrer brièvement Sweave, ce qui est particulièrement intéressant pour les étudiants souhaitant une thèse de maîtrise empirique.

Et oui, +1 pour utiliser RStudio. Il a une excellente aide et une auto-complétion, qu'il a même amélioré récemment (par exemple, la correspondance des accolades a été ajoutée). Et c'est aussi un très bon exemple de la manière dont R est comparé à SPSS ou STATA. Vous devez mentionner que vous configurez et améliorez votre propre environnement de travail. Ce n'est pas un programme, mais un package. Vous pouvez choisir l'éditeur, les packages graphiques, les moyens de stocker les données et bien plus encore. Cela peut sembler évident pour vous, mais peut-être aussi pour les débutants.

Cela étant dit, choisissez un sujet comme Hadley l'a dit et allez-y. Fondamentalement, je voulais juste dire utiliser un peu de temps pour donner un aperçu des possibilités infinies.

Voici une discussion sur les programmeurs c'était SO avant mais a été migré. Nous discutons de la manière de commercialiser R dans un institut universitaire. Et bien sûr, certains arguments plaident également pour le lobbying auprès des étudiants.

Ou affichez simplement la vidéo de Hadley sur youtube et allez prendre un café.


14
2018-06-20 14:15



Cette réponse est en retard, mais j'ai réalisé que cela pourrait être utile.

J'ai introduit un certain nombre de personnes à R, en particulier les programmeurs, mais cela devient une entrée mentale sur Wikipedia si je leur montre simplement une régression linéaire, des tabulations, quelques tracés, etc. Ils regardent, ils écoutent, ils ne font plus rien - Après tout, Excel est toujours disponible pour eux.

Quand je les montre iplots et le jeu de données Titanic, ils absorbent tout. Ils commencent à copier l'exemple de code sur leurs ordinateurs. Avant longtemps, ils ont commencé à fouiller load, hist (et ihist), glm, summary et beaucoup d'autres fonctions.

Il est préférable de les émerveiller pour qu'ils souhaitent apprendre par eux-mêmes.

le iplots le site ne semble plus montrer les exemples du Titanic, optant plutôt pour Cars93: http://rosuda.org/iplots/.

Pour ce que cela vaut, l’épiphanie qui a guidé de meilleures présentations était d’apprendre au public à poser des questions sur les données. Quelques idées visuelles plus tard et ils sont très désireux d'en savoir plus. C'est formidable de voir des adultes qui ne peuvent pas rester assis car ils ont des idées pour savoir quoi essayer. Ils sont mastic dans vos mains à ce point.


8
2017-08-05 14:37



Je viens de donner un tutoriel sur R aux étudiants en économie, sans aucune connaissance préalable de la programmation.

Mes contenus:

  • discussion sur les outils d'analyse des données
  • éditeurs de texte
  • obtenir R
  • Principes fondamentaux du langage R: vecteurs et matrices
  • application: formuler votre propre estimateur OLS
  • Fonction lm et vitrine des formules
  • test t et test f
  • probabilité maximale: probit
  • installer des paquets et des vues CRAN
  • obtenir de l'aide
  • lectures suggérées

Je pensais qu'il était très important de couvrir certains principes de base de la langue, mais je n'ai pas atteint la moitié des sujets laissés par un grand nombre de personnes, pensant probablement "c'est trop ... je n'utiliserai pas cela". À une prochaine occasion, je déplacerais les principes fondamentaux de la langue vers une session «intermédiaire» et formaterais l’introduction. tutoriel plus comme une vitrine pour vendre cette technologie, et ensuite être clair sur ce qu'ils devraient lire ensuite s'ils sont "in". Il y a un compromis entre rigoureusement correct et intéressant (sauf si les détails du langage de programmation intéressent votre public).

Une fois que vous commencez à parler des détails de la langue, il est difficile de déterminer à quel moment vous devez vous arrêter. Une fois que vous avez donné des vecteurs et des matrices, vous devez mentionner quelques indices, des data.frame, qui vous amènent à parler de listes et à convertir entre matrice et data.frame. Cela couvre facilement 2 heures. Et ce n’est pas un argument de vente sexy pour un débutant absolu!

Je n'ai pas et ne voudrais pas utiliser Rstudio dans une présentation. Si l'éditeur de texte / terminal "traditionnel" est trop abstrait pour eux, alors R est trop abstrait pour eux. Un environnement fenêtré sophistiqué ne changera pas grand chose. Mais mentionnez qu'il existe de telles interfaces. Mentionnez également que R est multi-plateforme et discutez des différences / similarités entre les plates-formes, même si> 90% de votre audience utilise Windows.


1
2018-03-11 14:59



+1 à hadley; Je recommande définitivement le facteur wow avec ggplot ou wordcloud, mais certainement leur donner quelque chose de concret qu'ils peuvent faire aussi bien. 4 heures de ggplot sans arrière-plan R seront déroutantes pour un étudiant débutant.

Peut-être leur montrer comment créer un type particulier de tracé à partir de ggplot. Vous pouvez leur apprendre les bases de la définition d'un fichier de données et son utilisation, puis procéder à une analyse simple et leur faire réaliser un graphique simple mais attrayant. Je leur dirais à quel point les intrigues sont personnalisables, mais je me concentrerais sur un exemple simple plutôt que de les perdre dans un nombre impressionnant d'options. La personnalisation du traçage dans R peut être très décourageante pour un utilisateur débutant!

Bien que le style de codage et le code efficace soient importants, ils ne se souviendront pas de ces choses dans un seul atelier. Ayant pris des tutoriels comme celui-ci auparavant, je me souviens très peu de la syntaxe des leçons et je me suis vite perdu quand il y avait trop d'informations. Donnez-leur un bon document avec une liste de ressources (en particulier celles qui sont gratuites!) Et elles peuvent continuer seules si vous piquez leur intérêt.


0
2017-07-06 17:53