0

I've been looking for solutions but I still can't fix it.

To me the main issue come from alpha_1, alpha_2 ... And I don't know how to attribute values for alphas that we can choose with the function fonction_principale. It can't calculate indicateur because alpha1, alpha2 ... don't exist.

If you have any idea ?



fonction_principale = function(alpha_1,alpha_2,alpha_3,alpha_4,alpha_5){


  ###########
  #PREREQUIS#
  ###########
  source("C:/Users/François/Desktop/CODE/code_blocs/bloc_prerequis.R")

  ######################
  #BOUCLES RATIO ET NUM#
  ######################
  source("C:/Users/François/Desktop/CODE/code_blocs/bloc_boucles.R")

  ########################################
  #FUSION DES 3 RESULTATS : TABLEAU FINAL#
  ########################################
  source("C:/Users/François/Desktop/CODE/code_blocs/bloc_fusion.R")

  ########################
  #CALCUL DE L'INDICATEUR#
  ########################
  #on initialise iii à 0
  source("C:/Users/François/Desktop/CODE/initialisation/iii.R")

  #on charge la fonction calcul_indic
  source("C:/Users/François/Desktop/CODE/fonctions/calcul_indic.R") 

  #on charge la valeur des alphas (poids)
  #source("C:/Users/François/Desktop/CODE/initialisation/alphas.R")
  alpha1 = alpha_1
  alpha2 = alpha_2
  alpha3 = alpha_3
  alpha4 = alpha_4
  alpha5 = alpha_5

  #création de la variable indicateur et injection des données dans le tableau
  #et affichage du tableau final avec la variable indicateur
  #source("C:/Users/François/Desktop/CODE/code_blocs/bloc_injection.R")


for(iii in 1:dim(tableau_final)[1]){

  tableau_final$indicateur[iii] = calcul_indic(tableau_final,alpha1,alpha2,alpha3,alpha4,alpha5)

}

  ##############################################################
  #FONCTION COMPARAISON DES MODELES SUR LA BASE DE L'INDICATEUR#
  ##############################################################
  #on charge la fonction de comparaison des modeles
  #source("C:/Users/François/Desktop/CODE/fonctions/compar_model.R")

  compar_model = function(Tableau_gen){

    indic_min <- select(Tableau_gen, type_modele, modele, indicateur)
    indic_min = filter(indic_min, indicateur == min(indicateur))
    return(indic_min)

  }

  #on teste la fonction sur le tableau final (resultats des 3 modeles)
  compar_model(tableau_final)

  return(compar_model(tableau_final))


}


fonction_principale(0.2,0.2,0.4,0.6,0.8)


Miles
  • 69
  • 8
  • So `calcul_indic(donnees_tab,alpha1,alpha2,alpha3,alpha4,alpha5)` doesn't work? Can you show a definiction of `donnees_tab` (just some sample data)? And where do you define it in your function? – Martin Gal May 11 '20 at 15:56
  • No it doesn't work. But it works when I define alpha1 = 0.2, alpha2 = 0.6 ... (into the loop). To me the issue come from alphas. – Miles May 11 '20 at 16:01
  • donnees_tab is actually a dataframe – Miles May 11 '20 at 16:08
  • What exactly do you mean with defining `alpha1 = 0.2`? Do you set `alpha1=0.2` or do you run `calcul_indic(donnees_tab,0.2, 0.6)` without the `tableau_final$indicateur[iii]` part? The error message `object 'indicateur' not found` suggest, that there is simply no `tableau_final$indicateur` you are trying to assing something to. – Martin Gal May 11 '20 at 16:12
  • I changed the title and optimized my code. – Miles May 11 '20 at 16:52
  • Actually, it only works when I set alphas (alpha1=0.2, alpha2=0.4 ...) with source function. But I would like to set its by choosing parameters alpha_1, alpha_2 ... from fonction_principale arguments. – Miles May 11 '20 at 17:21
  • Please show some data, make a https://stackoverflow.com/questions/5963269/how-to-make-a-great-r-reproducible-example To give helpful advices, we need to run your code. – Martin Gal May 11 '20 at 21:04

0 Answers0