我正在尝试从摘要函数的输出中自动提取标准化的效果大小,这样我就可以自动地绘制下游图了。
具体来说,我总结了cooc_null_model(x=co-occurrence_data)的输出,我想输出“标准化效果大小”,这是打印结果中的最终值。
我该怎么做呢?
帮助部分的示例代码:
library(EcoSimR)
## Run the null model
finchMod <- cooc_null_model(dataWiFinches, algo = "sim9", nReps = 10000, burn_in = 500)
## Summary and plot info
summary(finchMod)我本来希望它是这样的:finchMod$Standardized_Effect_Size,但我似乎无法通过这些方法找到目标值。
感谢所有的帮助!!
发布于 2018-06-22 17:54:32
这是我所做的事情,以找出你兴趣的统计数字,SES。
第一步:
运行模型并检查
class(finchMod)
#[1] "coocnullmod"
str(finchMod)
#List of 13
# $ Obs : num 3.79
# $ Sim : num [1:10000] 2.59 2.59 2.59 2.59 2.6 ...
# $ Elapsed.Time : chr "1.7 secs"
# $ Time.Stamp : chr "Fri Jun 22 18:35:52 2018"
# $ Metric : chr "c_score"
# $ Algorithm : chr "sim9"
# $ N.Reps : num 10000
# $ SaveSeed : logi FALSE
# $ RandomSeed : NULL
# $ Randomized.Data: num [1:17, 1:19] 0 0 0 0 0 0 0 1 0 1 ...
# ..- attr(*, "dimnames")=List of 2
# .. ..$ : NULL
# .. ..$ : chr [1:19] "Cuba" "Hispaniola" "Jamaica" "Puerto_Rico" #...
# $ Data : num [1:17, 1:19] 0 0 0 0 1 0 0 0 0 1 ...
# ..- attr(*, "dimnames")=List of 2
# .. ..$ : NULL
# .. ..$ : chr [1:19] "Cuba" "Hispaniola" "Jamaica" "Puerto_Rico" #...
# $ burn.in : num 500
# $ burn.in.metric : num [1:500] 3.68 3.68 3.65 3.65 3.65 ...
# - attr(*, "class")= chr "coocnullmod"正如你所看到的,没有SES。这意味着它的值由方法summary.coocnullmod或该方法调用的某个函数计算。参见,例如,R FAQ 8.1。
第二步:
检查summary.coocnullmod的代码。在R提示符下,没有括号的函数的名称会打印它的正文。
summary.coocnullmod
Error: object 'summary.coocnullmod' not found所以使用getAnywhere。
getAnywhere(summary.coocnullmod)
A single object matching ‘summary.coocnullmod’ was found
It was found in the following places
registered S3 method for summary from namespace EcoSimR
namespace:EcoSimR
with value
function (object, ...)
{
nullmodObj <- object
[...etc...]
[...last code line...]
cat("Standardized Effect Size (SES): ", format((nullmodObj$Obs -
mean(nullmodObj$Sim))/sd(nullmodObj$Sim), digits = 5),
"\n")
}
<environment: namespace:EcoSimR>步骤三:
所以,现在您已经拥有了自动计算SES所需的一切。
ses <- function(object){
(object$Obs - mean(object$Sim))/sd(object$Sim)
}
ses(finchMod)
#[1] 5.69756https://stackoverflow.com/questions/50992868
复制相似问题