Warning: file_get_contents(/data/phpspider/zhask/data//catemap/4/r/84.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
R 尝试使用包引导在我的随机森林模型上运行jackknife_R_Random Forest_Statistics Bootstrap - Fatal编程技术网

R 尝试使用包引导在我的随机森林模型上运行jackknife

R 尝试使用包引导在我的随机森林模型上运行jackknife,r,random-forest,statistics-bootstrap,R,Random Forest,Statistics Bootstrap,我在试图弄清楚以下几点时遇到了困难:我正在运行随机森林对栖息地使用进行分类,并拥有17种动物的GPS数据。我的数据框架描述了不同的栖息地变量,如每个使用过的动物位置和每个未使用的随机位置的坡向和树冠覆盖。每个使用的位置也由动物的ID号标识(此列称为“猞猁”)。名为“usvsa”的列将使用的位置编码为1,未使用的位置编码为0。这是我的空间点数据框sdata3的顶部: lynx usvsa aspect canopy_cover clearcut_area cti deciduous

我在试图弄清楚以下几点时遇到了困难:我正在运行随机森林对栖息地使用进行分类,并拥有17种动物的GPS数据。我的数据框架描述了不同的栖息地变量,如每个使用过的动物位置和每个未使用的随机位置的坡向和树冠覆盖。每个使用的位置也由动物的ID号标识(此列称为“猞猁”)。名为“usvsa”的列将使用的位置编码为1,未使用的位置编码为0。这是我的空间点数据框sdata3的顶部:

lynx usvsa   aspect canopy_cover clearcut_area       cti deciduous dist_draw dist_ridge 
311    1 252.3302      55.3704             0  7.311823         0   90.0000  484.66483            
311    1 263.1394      55.1528             0  6.857203         0  324.4996  305.94116            
311    1 249.6992      72.9272             0  6.612025         0  364.9658  212.13203            
311    1 194.4459      50.4428             0  6.330615         0  108.1665   67.08204     
嗯。所以,我想使用Jackknifing来运行Random Forest 17次(因为我有17个个体),每次运行时只留下一只动物。这个想法是比较每一次随机森林跑步的结果,以确保没有一种动物对模型结果产生过大的影响。我一直在阅读有关包“引导”和jackknife函数的内容:
jackknife(x,θ,…)

我知道我需要为θ写一个函数,但我不知道如何把它放在一起,这样每一次随机森林的运行都会留下一只动物。这是我的随机林模型:
randomForest(y~,data=sdata3,ntree=b,importance=TRUE,norm.vots=TRUE,approxity=TRUE)
我想比较每次运行的重要性值和oob错误。
任何提示都将不胜感激

您是否意识到OOB错误仅在树构造中未包含的树上计算?所以OOB错误基本上已经在做你描述的事情了。我明白你的意思,只是我试着运行模型,每次运行一只动物。所以,每次跑步的不同之处在于,一只动物的数据被忽略了。我想知道,如果我将任何一种动物的数据遗漏,表明该动物正在选择与其他动物非常不同的栖息地,那么整体OOB错误(或变量的重要性)是否会受到很大影响。不过,我想我现在会这样做,虽然我认为可能有一种比显式jackknife更简单的方法,但我仍在努力解决这个问题,我认为主要的问题是jackknife函数想要返回一个平均值,我想探究的是每个随机林运行的结果(oob错误,预测错误…)。我想也许我需要编写一个循环函数,只运行随机森林模型,每次只保留一只动物,并将每次运行的结果保存到csv文件中。我已经读了一些关于循环的书,但如果有任何想法,我将不胜感激!