Erreur avec lm() la commande: type non valide (liste) pour la variable
Je vais prendre une classe sur R et je ne peux pas obtenir le professeur du code du travail. Je suis en train de faire un modèle linéaire simple et j'exécute ce code:
ozone <- read.table(
"http://www.ats.ucla.edu/stat/r/faq/ozone.csv",
sep = ",",
header = TRUE
)
fit = lm(ozone ~ ., data = ozone)
summary(fit)
Qui continue de me donner le message d'erreur suivant:
D'erreur dans le modèle.cadre.par défaut(formule = ozone ~ ., data = ozone, à la baisse.inutilisés.les niveaux = TRUE) : invalid type (liste) pour la variable 'ozone
C'est vraiment déprimant, car ils sont les deux premières lignes de code dans ses notes de cours. J'ai aussi trouvé plusieurs autres posts sur le forum sur ce sujet (c'est même répertorié comme un courant de recherche l'erreur), mais je suis trop spécial à comprendre comment le changer.
J'ai essayé de le lire comme un numeric
, et comme un data.frame
, qui est ce que la plupart des autres threads suggéré, mais ni travaillé.
Les professeurs sont toujours à tort. Vous n'avez pas appris encore? 🙂 (on dit un double-faculté de gosse)
Voici une idée folle: Demander au professeur.
OriginalL'auteur bob smith | 2013-09-25
Vous devez vous connecter pour publier un commentaire.
d'ozone de la table n'a pas d'ozone comme une variable et donc votre lm fonction échouerait
Cela devrait fonctionner
OriginalL'auteur vins
Disons que votre ozone ensemble de données contient X (exposé des valeurs de la colonne 5,6 et 7. Il vous suffit d'enregistrer ces données dans une matrice de type de données comme
ozone.X = as.matrix(cbind(ozone[5],ozone[6],ozone[7]))
. Faire de même pour celle de l'axe de la colonne. Si c'est dans la colonne 2 de l'ozone neozone.Y = as.matrix(ozone[2])
. Vous pouvez maintenant exécuter votrelm
fonctionner sans elle aboie sur une erreur de typelm(ozone.Y ~ ozone.X)
.OriginalL'auteur