Arbre de décision

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

Nicolas Bastide
Messages : 15
Enregistré le : 15 Juil 2020, 15:17

Arbre de décision

Messagepar Nicolas Bastide » 04 Aoû 2020, 09:00

Bonjour à tous,

Je me permets de poster ce message afin d’avoir quelques précisions sur les arbres de décision.
J’ai plusieurs variables environnementales (NTFm2+Diamoy+Hmoy+NTVm2+NTSm2+EAU+Ligneux) et une variable à expliquer qui est la présence ou l’absence d’une espèce (ACRMEL = Lusciniole à moustache).
J’aimerai pouvoir associer un poids différent à mes variables environnementales.
Je travaille avec le package Rpart et j’ai donc essayé de cette manière ;

>rpart(ACRMEL~ NTFm2+Diamoy+Hmoy+NTVm2+NTSm2+EAU+Ligneux ,data=ETE, weights = c(0.1, 0.1, 0.2, 0.1,0.1,0.3,0.1), control=rpart.control(minsplit=5,cp=0))
##j'ai aussi essayé en mettant weights = c(NTFm2=0.1 ....)
Message d’erreur ;

>Error in model.frame.default(formula = ACRMEL ~ NTFm2 + Diamoy + Hmoy + :
les longueurs des variables diffèrent (trouvé pour '(weights)')

Je n’arrive pas à comprendre d’où cela peut venir, surtout que je n’ai pas de NA dans mes données et que toutes mes variables font la même taille……

Ps : Savez-vous comment demander à R de faire en sorte que je ne puisse avoir seulement qu’une seule fois la variable dans tout l’arbre : quelques fois une variable revient à plusieurs niveaux….
En vous remerciant par avance,

Bien cordialement,
Nicolas Bastide

Fred Santos
Messages : 233
Enregistré le : 11 Avr 2009, 10:00
Contact :

Re: Arbre de décision

Messagepar Fred Santos » 04 Aoû 2020, 11:19

Bonjour,

Attention, l'argument weights ne s'applique pas aux variables, mais aux individus (tout comme l'argument weights de la fonction lm(), par exemple) :
weights: optional case weights.


Ce que vous voulez faire correspond plutôt à l'argument cost :
cost: a vector of non-negative costs, one for each variable in the model. Defaults to one for all variables. These are scalings to be applied when considering splits, so the improvement on splitting on a variable is divided by its cost in deciding which split to choose.


Note : ça peut être assez casse-gueule d'utiliser des pondérations dans l'algorithme CART, donc à utiliser seulement si vous savez parfaitement le justifier au vu de votre problème. Personnellement, je ne m'y suis jamais risqué.

Nicolas Bastide
Messages : 15
Enregistré le : 15 Juil 2020, 15:17

Re: Arbre de décision

Messagepar Nicolas Bastide » 04 Aoû 2020, 15:39

Bonsoir,

Je vous remercie pour les précisions,

Savez vous pourquoi l'arbre me met en priorité des variables qui n'influent pas forcément significativement (lm, pvalue<0.001) sur l'abondance des espèces ?

De plus, savez-vous comment demander à R de faire en sorte que je ne puisse avoir seulement qu’une seule fois la variable dans tout l’arbre ??

En vous souhaitant une bonne soirée,

Nicolas BASTIDE

Mickael Canouil
Messages : 1315
Enregistré le : 04 Avr 2011, 08:53
Contact :

Re: Arbre de décision

Messagepar Mickael Canouil » 05 Aoû 2020, 12:17

Bonjour,

pour information, l'extension "treeheatr" vous intéressera peut-être pour la visualisation.
Image

Cordialement,
Mickaël
mickael.canouil.fr | rlille.fr

Facundo Muñoz
Messages : 156
Enregistré le : 04 Juil 2019, 09:58
Contact :

Re: Arbre de décision

Messagepar Facundo Muñoz » 05 Aoû 2020, 12:36

Cool !

Mickael Canouil a écrit :Bonjour,

pour information, l'extension "treeheatr" vous intéressera peut-être pour la visualisation.
Image

Cordialement,
ƒacu.-


Retourner vers « Questions en cours »

Qui est en ligne

Utilisateurs parcourant ce forum : Google [Bot] et 1 invité