Upload
dion-lacroix
View
109
Download
3
Embed Size (px)
Citation preview
PROGRAMMATION SCIENTIFIQUE EN C
PRO-1027
Approximation de fonctions et régression
Introduction– Analyse de la corrélation
– Régression et méthode des moindres carrés Travail pratique 4
– Affichage de points et d’une courbe avec xgraph
– Commande move de xgraph Mini-test #2
Introduction
Dans plusieurs applications, la variation des valeurs d’une variable peut être mise en relation avec d’autres variables
De plus, nous pouvons déduire la relation qui exis-te entre deux ou plusieurs variables
Les relations qui existent entre les variables peu-vent être comprises par des analyses de corrélation et de régression
Introduction (Analyse de la corrélation)
L’analyse de la corrélation permet d’évaluer le degré d’interrelation qui existe entre les variables
Ce degré d’interrelation mesure le niveau avec lequel les valeurs des variables varient systémati-quement
Cet indice nous indique alors avec quelle certitude nous pouvons utilisée une ou plusieurs variables pour en prédire une autre
Introduction (Analyse de la corrélation)
La corrélation indique si les variations entre variables sont significatives
L’analyse de la corrélation ne permet pas de déduire l’équation mettant en relation une ou plusieurs varia-bles indépendantes avec une variable dépendante
L’analyse de la corrélation ne peut déterminer si une relation est causale (de cause à effet)
L’analyse de la corrélation est généralement accom-plie après avoir déduit l’équation mettant en relation une variable avec une autre
Introduction (Analyse de la corrélation)
Et ce, parce que le coefficient de corrélation qui est en fait un indice du degré variation linéaire, est aussi utiliser comme coefficient d’ajustement (goodness of fit) entre le polynôme d’approximation et les données échantillons (points de contrôle) qui ont permis de déduire ce polynôme d’approximation
Introduction (Analyse de la corrélation)
Corrélation (interprétation graphique)
Introduction (Analyse de la corrélation)
Variance des données– La variance totale (TV) d’un ensemble d’échantillons
(X,Y) peut être séparée selon la variation expliquée par la variation par rapport à l’approximation de Y (EV) et celle non expliquée (UV)
TV = EV + UV
– Chaque termes est exprimés par:
2
1
2
1
2
1
ˆˆ
n
ii
n
ii
n
ii YYYYYY
Introduction (Analyse de la corrélation)
Variance des données (TV = EV + UV)
TV
EV UV
Introduction (Analyse de la corrélation)
La corrélation peut être déduite par le rapport EV/TV qui représente la fraction de la variation totale qui est expliquée par la relation linéaire entre les variables X et Y et est appelé coefficient de détermination. Ce rapport est déduit par:
TV
EVR
YY
YY
TV
EVR
n
ii
n
ii
2
1
2
12
ˆ
• R: coefficient de corrélation
Introduction (Régression)
La régression permet de déduire les coefficients de l’équation mettant en relation une variable dépen-dante à une ou plusieurs variables indépendantes
La forme du modèle linéaire (bivarié) à une seule variable indépendante est donnée par:
XbbY 10ˆ
b0: ordonnée à l’origineb1: pente
Introduction (Régression)
La forme du modèle linéaire multivarié est:
ppXbXbXbbY 22110ˆ
b0: ordonnée à l’originebi: pente associée à la variable Xi
p: nombre de variables
Introduction (Régression par moindre carré)
Les valeurs des coefficients bi peuvent être déduits par une méthode de moindre carré
Par cette méthode nous cherchons les valeurs des coefficients bi qui minimisent la somme des carrés des erreurs par:
2
1
ˆmin
n
iiYYF
Travail pratique 4
Approximation d’un ensemble de données portant sur les cotes boursières (XXM)
Travail pratique 4
Affichage des points de contrôle dans une graphi-quefor(i=0;i < NBPOINTDECONTROLE;i++)
{
fprintf(fp, ’’move %lf %lf\n ’’, x[i],y[i]);
fprintf(fp, ’’ %lf %lf\n ’’, x[i],y[i]);
}
Travail pratique 4
Affichage des points de contrôle dans une graphi-que avec validation de l’écriture
for(i=0;i < NBPOINTDECONTROLE;i++){
if((fprintf(fp, ’’move %lf %lf\n ’’, x[i],y[i]) == EOF){
printf(’’ ERREUR D’ECRITURE ’’);
exit(0);
}
if((fprintf(fp, ’’%lf %lf\n ’’, x[i],y[i]) == EOF){
printf(’’ ERREUR D’ECRITURE ’’);
exit(0);
}
}