comment obtenir le gradient de abline dans la R
Je veux obtenir la valeur de la pente/inclinaison pour un modèle linéaire sur un nuage de points dans R
Si par exemple j'ai une parcelle:
x <- 1:10
y <- c(0, 0, 1, 0, 1, 1, 0, 1, 1, 1)
plot(x, y)
abline(lm(y ~ x))
Le nuage de points a maintenant une ligne, pour laquelle j'ai besoin de savoir le dégradé. Idéalement ce que je veux, c'est une fonction qui permet de travailler les dégradés pour divers x/y combinaisons, sans tracer le diagramme à chaque fois. Je peux créer la fonction de moi-même, mais je suis coincé sur la façon d'obtenir le dégradé.
lm(y ~ x)$coefficients[2]
donne la pente de la ligne dans cet exemple. Est que tout ce que vous cherchez?Mineur pinaille: généralement
coef(lm(y~x))[2]
est préféré.OriginalL'auteur edc505 | 2013-10-29
Vous devez vous connecter pour publier un commentaire.
À l'aide de vos données et l'exemple
Enregistrer le modèle linéaire, vous avez réussi à abline, ce qui peut être fait en ligne
Puis examiner les coefficients du modèle
mod
à l'aide de lacoef()
fonctionLa "pente" est le deuxième coefficient. Si vous voulez extraire uniquement un sous-ensemble le vecteur renvoyé par
coef()
, comme dansNoter que je ne recommande pas l'attribution aux objets dans le cadre d'un argument à une autre fonction, comme je l'ai fait ci-dessus. Si votre code ou script est grande alors de ces choses peuvent être plus difficiles à repérer ou la tache à l'oeil. Je préfère généralement pour créer des objets sur leur propre ligne. Pour l'exemple ci-dessus, je veux dire faire
qui n'est pas une grande différence, mais il est plus facile de repérer où
mod
est créé et comment.OriginalL'auteur Gavin Simpson
Un simple modèle de régression linéaire a deux coefficients de laquelle vous pouvez extraire avec le coef de la fonction. La pente est le deuxième coefficient.
OriginalL'auteur Henrik