Régression linéaire sur VB6

roudoudou -  
 goldboy -
Amis informaticiens, bonjour !

Actuellement en licence de chimie (vous allez me dire : mais qu'est-ce tu fous là ??!! attendez, j'y arrive) on me demande dans le cadre d'une option info de déveloper un programme de régression linéaire sur VB6. Je précise bien sûr qu'à part word, excel et internet je ne connais rien à l'informatique... d'où un profond désarroi.
Je vais donc appel à vous, ô génies de la programmation, pour me donner quelques pistes, en langage extrêmement simple, sur ce programme qui me fait peur... On me demande à partir d'un fichier texte de coordonnées de points de calculer la pente a de la droite de régression et son ordonnée b, et bien sur de calculer le coeff de correlation, r²...
HEEELP !!!
Merci pour vos réponses

Marion

3 réponses

  1. youlel
     
    salut voila le programme de la régression lineaire en VB/

    ' Effectuer une régression linéaire
    ' En entrée : un tableau de 5 points (0->4)
    ' En sortie : m (pente), b (décalage), Precision (Précision)
    Public Sub Effectue_Regression(m As Double, b As Double, Precision As Double, Point() As CPoint)
    On Error GoTo Erreur

    Dim Xbarre As Double
    Dim Ybarre As Double
    Dim Numerateur As Double
    Dim Denominateur As Double
    Dim Y_Moyen As Double
    Dim i As Integer

    ' Calcul de XBarre et YBarre
    Xbarre = 0
    Ybarre = 0
    For i = 0 To 4
    Xbarre = Xbarre + Point(i).X
    Ybarre = Ybarre + Point(i).Y
    Next i
    Xbarre = Xbarre / 5
    Ybarre = Ybarre / 5

    'Calcul de m et b
    Numerateur = 0
    Denominateur = 0
    For i = 0 To 4
    Numerateur = Numerateur + (Point(i).X - Xbarre) * (Point(i).Y - Ybarre)
    Denominateur = Denominateur + (Point(i).X - Xbarre) ^ 2
    Next i
    ' pente
    m = Numerateur / Denominateur
    ' constante
    b = Ybarre - m * Xbarre

    ' Precision de l'estimation (estimation 'maison')
    Precision = 0
    For i = 0 To 4: Precision = Precision + ((m * Point(i).X + b) - Point(i).Y) ^ 2: Next i
    Y_Moyen = 0
    For i = 0 To 4: Y_Moyen = Y_Moyen + Point(i).Y ^ 2: Next i
    Y_Moyen = Y_Moyen / 5
    Precision = Precision / Y_Moyen
    Exit Sub

    BONNE JOURNEE
    5
  2. goldboy
     
    bonjour tout le monde
    je vous remercie d'habord pour ce programme mais j'ai rencontrè un problème c'est que j'ai une version en anglais et ce programme ca marche pas chez nous et je vous demande si quelqu'un peut le traduire et merci d'avance!!!!
    0
  3. breuge Messages postés 139 Statut Membre 28
     
    moi je conné VB mais pas les coefficient de machin truc...

    mais je veux bien essayer de t'aider :)
    -1