web-dev-qa-db-fra.com

Comment désactiver définitivement stringsAsFactors = TRUE dans data.frame?

Voir titre. Franchement, j'en ai un peu marre de faire le réglage manuellement tout le temps.

Cela devrait être une question simple, mais je n'arrive pas à comprendre comment y remédier. Merci.

35
lokheart

Définissez options(stringsAsFactors = FALSE) au début de votre session R ou dans votre .RProfile.

Comme les commentaires ci-dessous le suggèrent, stringsAsFactors est un peu un sujet controversé au sein de la communauté R. La façon dont vous trouvez irritant cette valeur par défaut peut dépendre quelque peu du temps que vous passez à utiliser R pour s'adapter à de nombreux modèles statistiques "standard" (lm, glm, etc.). Bon nombre de ces fonctions d'ajustement de modèle et fonctions connexes sont construites à l'aide du type de données factoriel.

Si vous passez la plupart de votre temps à effectuer d'autres types d'analyse de données plus "génériques", vous pouvez trouver cette valeur par défaut plus irritante.

Il est largement considéré comme dangereux de définir globalement stringsAsFactors = FALSE pour les raisons mentionnées ci-dessous: cela peut provoquer une confusion importante lors du partage de code. En effet, même si vous travaillez principalement seul, participer à des communautés en ligne comme StackOverflow peut être délicat si vous insistez pour exécuter R avec stringsAsFactors = FALSE: votre réponse à une question peut ne pas fonctionner pour l'OP, ou vous ne pourrez peut-être pas reproduire les erreurs que d'autres voient!

Bien sûr, chacun peut faire ses propres choix sur la meilleure façon de gérer ces risques par lui-même.

55
joran