Smoothing - forcer la courbe à passer par deux points

Postez ici vos questions, réponses, commentaires ou suggestions - Les sujets seront ultérieurement répartis dans les archives par les modérateurs

Modérateur : Groupe des modérateurs

Elsa Bussière
Messages : 86
Enregistré le : 30 Mar 2011, 09:34
Contact :

Smoothing - forcer la courbe à passer par deux points

Messagepar Elsa Bussière » 26 Avr 2017, 14:59

Bonjour,

J'ai plusieurs variables y (x, y1, y2, y3 .... etc) que j'aimerais représenter sous forme de courbes lissées dans un seul graph.
x =[0 - 90].
J'aimerais que toutes les courbes commencent à (0,0) et se termine à (90,1), car ces deux points sont précis.
Or pour le moment avec le code ci-dessous, je n'obtiens pas cela.
A part pour la première qui est bien, les autres courbes finissent certes plutôt proches de 1 (car presque asymptotiques) mais ne passent pas par l'origine.

Code : Tout sélectionner

x <- speedmatrix2[,1]
y <- speedmatrix2[,2]
lo <- loess(y ~ x)
plot(predict(lo), col='red', lwd=2)

for (i in 2:11){
  x <- speedmatrix2[,1]
  y <- speedmatrix2[,i]
  lo <- loess(y ~ x)
  lines(predict(lo), col='red', lwd=2)
}


Code : Tout sélectionner

> dim(speedmatrix2)
[1] 90 11


Veuillez m'éclairer.
Merci,

Elsa
Elsa Bussière

Ludovic Hinlu
Messages : 5
Enregistré le : 27 Avr 2017, 10:04

Re: Smoothing - forcer la courbe à passer par deux points

Messagepar Ludovic Hinlu » 27 Avr 2017, 15:00

Bonjour,

Ta régression risque d'en prendre un coup, étant donné qu'on perd un paramètre (l'intercept), je ne pense pas que ce soit la meilleure idée (à moins qu'on ait vraiment un énorme risque de modèle...)

Pour passer par (0,0), tu peux écrire lo <- loess(y ~ x-1) à la troisième ligne (+ boucle)
Pour passer par (90,1), je pense pas qu'il y ait d'option, la seule chose que je peux proposer c'est, ( si vecpre <- predict(lo) )
Tu peux imposer vecpre <- vecpre / vecpre[90]

Cdt, Ludovic

Dominique Soudant
Messages : 758
Enregistré le : 23 Avr 2008, 11:12
Contact :

Re: Smoothing - forcer la courbe à passer par deux points

Messagepar Dominique Soudant » 27 Avr 2017, 15:15

Il y a un pb technique et un pb stat. Le pb technique est géré par Ludovic et l'attention est attirée sur le pb théorique (qui n'est pas le sujet de ce forum). J'en rajoute une couche : c'est une hypothèse très forte de forcer a priori la régression à passer par l'origine, généralement on ne le fait pas. Dans le cas d'une régression, on peut tester la valeur des coefficients de la droite, c'est déjà une chose que de pouvoir dire que l'ordonnée à l'origine est non-significativement différente de 0. Sur du Loess, une approche peut être d'observer si l'ordonnée à l'origine est ou pas dans l'IC à 95%.
@+


Retourner vers « Questions en cours »

Qui est en ligne

Utilisateurs parcourant ce forum : Google [Bot] et 1 invité