2016-08-03 1 views
0

J'ai essayé d'utiliser le paquetage hier.part R (et sa fonction hier.part()) pour estimer les contributions indépendantes des variables. Soudain, j'ai ressenti une forte dépendance à l'ordre des prédicteurs.R hier.part() dépend de l'ordre des prédicteurs

Il existe un document (http://journals.plos.org/plosone/article?id=10.1371/journal.pone.0011698) indiquant un comportement similaire pour plus de 9 prédicteurs. La documentation du paquet signale également une "erreur d'arrondi mineure" pour 9-12 prédicteurs. Mais je l'ai expérimenté même dans l'exemple du paquet avec 4 variables indépendantes.

> library(hier.part) 
> data(amphipod) 
> env1 <- amphipod[,2:5] 
> hier.part(amphipod$australis, env1, fam = "binomial", 
+   gof = "logLik", barplot=F)$I.perc 
       I 
fimp 19.74685 
fconn 18.24679 
densep 25.24765 
unseal 36.75871 
> hier.part(amphipod$australis, env1[,c(4,3,2,1)], fam = "binomial", 
+   gof = "logLik", barplot=F)$I.perc 
       I 
unseal 16.16072 
densep 17.98755 
fconn 32.00246 
fimp 33.84927 

De plus, les valeurs exactes ne sont pas stables entre les appels. La fonction utilise le code C (dans l'appel de partition()) et au moins le problème "entre les appels de stabilité" peut lui être attribué, car tout le code R pertinent est déterministe.

+0

Je ne pense pas que cela n'a rien à voir avec le langage de programmation C, donc s'il vous plaît enlever la [tag: c] tag. –

+0

J'ai ajouté quelques explications sur la balise c. – dmitrienka

Répondre

0

cette fois-ci, votre problème n'apparaît pas dans mon R. Les deux que je perc $ sont les same.-Chenxi