[英]R: Base functions cannot use object from the package Caper
我正在使用caper
包進行系統發育分析,其中的回歸函數(使用系統發育獨立的對比)非常crunch
。 crunch
功能使用在caper
包內部的名為caic
的對象。
該模型通過以下方式啟動:
crunchMod <- crunch(y ~ f(x), data = comparison)
當我運行summary(crunchMod)
時,會得到與lm()
函數生成的摘要相同的格式。
但是,嘗試通過輸入rstandard(crunchMod)
開始檢查模型假設時,出現以下錯誤:
Error in UseMethod("rstandard") :
no applicable method for 'rstandard' applied to an object of class "caic"
通過閱讀第19-20頁的http://cran.r-project.org/web/packages/caper/vignettes/caper.pdf ,我發現plot(crunchMod)
使用包裝器可以檢查回歸假設。 但是,這些是圖形檢查:
residuals vs Fitted values
standardized residuals vs theoretical quantities [QQ plot]
sqrt(standardized residuals) vs fitted values [Scale-location]
standardized residuals vs leverage).
有誰知道如何使用我自己的包裝器訪問標准化殘差,或者允許我訪問p值而不是圖形圖像?
這是非常簡單的,但只有在使用crunch().
中的第二條if()
語句繞了一圈之后才進行crunch().
查看caic
的摘要方法,它只是整個摘要/模型的一部分
> summary.caic
function (object, ...)
{
summary(object$mod, ...)
}
<environment: namespace:caper>
您可以看到整個模型的名稱,其中顯示了其余的有用統計信息。
names(summary(crunchMod))
# [1] "call" "terms" "residuals" "coefficients"
# [5] "aliased" "sigma" "df" "r.squared"
# [9] "adj.r.squared" "fstatistic" "cov.unscaled"
請注意,只有mod
部分是從lm()
繼承的,您可以使用以下命令檢查出crunchMod
對象的所有繼承
> sapply(crunchMod, is)
$contrast.data
[1] "list" "vector"
$mod
[1] "lm" "oldClass"
$data
[1] "comparative.data"
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.