IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

Langage Java Discussion :

[NaN] Calcul d'une régression linéaire


Sujet :

Langage Java

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre expérimenté
    Avatar de GLDavid
    Homme Profil pro
    Head of Service Delivery
    Inscrit en
    Janvier 2003
    Messages
    2 895
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 48
    Localisation : France, Seine Saint Denis (Île de France)

    Informations professionnelles :
    Activité : Head of Service Delivery
    Secteur : Industrie Pharmaceutique

    Informations forums :
    Inscription : Janvier 2003
    Messages : 2 895
    Par défaut [NaN] Calcul d'une régression linéaire
    Bonjour

    Voici mon problème. Je dois convertir un code PHP vers Java. Une partie de ce code contient un calcul de régression linéaire. D'ores et déjà, j'avertis que je suis pas matheux
    Voici la méthode qui permet de faire ce calcul :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    21
    22
    23
    24
    25
     
    public void calculate(Spectrum spectrum){
    		int n = spectrum.countPoints();
    		int n2 = n*n;
    		double sommeX = sumX(spectrum);
    		double sommeX2 = sumX2(spectrum);
    		double sommeY = sumY(spectrum);
    		double sommeY2 = sumY2(spectrum);
    		double sommeXY = sumXY(spectrum);
    		double covXY=(n*sommeXY-sommeX*sommeY)/n2;
    		double varX=(n*sommeX2-sommeX*sommeX)/n2;
    		double varY=(n*sommeY2-sommeY*sommeY)/n2;
     
    		double tmp=n*sommeX2-sommeX*sommeX;
     
    		b0=(sommeX2*sommeY-sommeX*sommeXY)/tmp;
    		b1=(n*sommeXY-sommeX*sommeY)/tmp;
    		double Q1 = (sommeY2+n*b0*b0+b1*b1*sommeX2+2*(b0*b1*sommeX-b0*sommeY-b1*sommeXY));
    		double Q2 = (n-2);
    		double Q3 = Q1/Q2;
    		sr=Math.sqrt(Q3);
    		s0=(sr*Math.sqrt(sommeX2/tmp));
    		s1=(sr*Math.sqrt(n/tmp));
    		r=(covXY/Math.sqrt(varX*varY));
    	}
    Mon problème est le suivant, j'ai des valeurs qui sont NaN. Par exemple, pour le calcul de la variable r, le Math.sqrt d'un nombre négatif sera NaN. Donc, évidemment, cela perturbe tout.
    Je précise que je suis sous JDK 1.4.2.
    Y aurait-il un mathématicien pour vérifier si le calcul est correct ? J'ai tiré ce code brut de décoffrage de PHP. Sans doute les opérations ne sont pas correctes ?

    Merci d'avance.

    @++
    GLDavid
    Consultez la FAQ Perl ainsi que mes cours de Perl.
    N'oubliez pas les balises code :tagcode: ni le tag :resolu:

    Je ne répond à aucune question technique par MP.

  2. #2
    Membre expérimenté
    Avatar de GLDavid
    Homme Profil pro
    Head of Service Delivery
    Inscrit en
    Janvier 2003
    Messages
    2 895
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 48
    Localisation : France, Seine Saint Denis (Île de France)

    Informations professionnelles :
    Activité : Head of Service Delivery
    Secteur : Industrie Pharmaceutique

    Informations forums :
    Inscription : Janvier 2003
    Messages : 2 895
    Par défaut
    Bon, j'ai trouvé. En fait, l'erreur venait de PHP , ma méthode de calcul est juste, mais j'utilise des ArrayList alors que le codeur PHP utilisait une table de hachage. Ce qui fait qu'il y avait un problème dans les indices et de ce fait dans les calculs.

    Merci beaucoup.

    @++
    GLDavid
    Consultez la FAQ Perl ainsi que mes cours de Perl.
    N'oubliez pas les balises code :tagcode: ni le tag :resolu:

    Je ne répond à aucune question technique par MP.

+ Répondre à la discussion
Cette discussion est résolue.

Discussions similaires

  1. Moyenne géométrique dans une régression linéaire
    Par Lilouche52 dans le forum SAS STAT
    Réponses: 2
    Dernier message: 06/06/2013, 09h13
  2. LaTeX PGFplots / Tikzpicture tracer une régression linéaire
    Par galaxie87 dans le forum Tableaux - Graphiques - Images - Flottants
    Réponses: 0
    Dernier message: 16/07/2010, 22h09
  3. Réponses: 1
    Dernier message: 30/06/2010, 08h47
  4. calcul de pente de régression linéaire
    Par I.Z.M.M dans le forum SSAS
    Réponses: 0
    Dernier message: 23/03/2010, 13h23
  5. Réponses: 2
    Dernier message: 22/12/2006, 20h24

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo