Erreur avec la fonction sobol

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

Martino Lacirignola
Messages : 1
Enregistré le : 04 Avr 2016, 08:10

Erreur avec la fonction sobol

Messagepar Martino Lacirignola » 04 Avr 2016, 09:46

Bonjour,

J'essaie d'effectuer une analyse de sensitivité globale avec la fonction sobol2002 du package sensitivity mais j'obtiens un message d'erreur que je n'arrive pas à résoudre.

Pour le contexte: le code a comme but de calculer les émissions d'une centrale électrique à partir de certains paramètres. Ces assument des valeurs selon des distributions de probabilité, desquelles je définis la forme (moyenne, variance, etc).

Je lance la fonction par la commande:

Code : Tout sélectionner

ResultatSobol=sobol2002(model=PerfoCourbe,
                         MatriceSigMoyDis[1:trunc(n/2),],
                         MatriceSigMoyDis[(trunc(n/2)+1):n,],
                         nboot=4000,conf=0.95)


MatriceSigMoyDis est un data.frame de 6 colonnes et plusieurs lignes (chaque ligne est un scénario).
PerfoCourbe est une fonction qui reçoit MatriceSigMoyDis et calcule les émissions à partir de ces données.

L'erreur qui s'affiche est le suivant:

Code : Tout sélectionner

Error in `row.names<-.data.frame`(`*tmp*`, value = value) :
  invalid 'row.names' length
De plus : Warning message:
In response(x, ...) : Conversion of the response to numeric


Est-ce que cela vous parle?
Je ne m'explique pas l'erreur car j'ai utilisé sobol2002 dans d'autres codes similaires et ça fonctionne bien..
D'ailleurs j'ai regardé dans le code de la fonction sobol2002 de la library et je ne trouve pas la ligne row.names etc...

Merci de votre aide,

Martino

Retourner vers « Questions en cours »

Qui est en ligne

Utilisateurs parcourant ce forum : Aucun utilisateur enregistré et 1 invité