sigma
位於 stats
包(package)。 說明
提取誤差的估計標準差 “residual standard deviation”(也被錯誤命名為 “residual standard error”,例如,在 summary.lm()
的輸出中,來自擬合模型)。
許多經典統計模型都有一個尺度參數,通常是 zero-mean 正態(或高斯)隨機變量的標準差,表示為 sigma(.)
從擬合模型中提取估計參數,即 。 。
用法
sigma(object, ...)
## Default S3 method:
sigma(object, use.fallback = TRUE, ...)
參數
object |
一個R對象,通常由模型擬合函數產生,例如 |
use.fallback |
邏輯,傳遞給 |
... |
可能會進一步傳入和傳出方法的參數。傳遞給默認方法的 |
細節
stats
包提供 S3 泛型、默認方法以及 "glm" 類對象的方法。默認方法通常對於(漸近/近似)廣義高斯 (“least squares”) 問題是正確的,因為它定義為
sigma.default <- function (object, use.fallback = TRUE, ...) sqrt( deviance(object, ...) / (NN - PP) )
其中NN <- nobs(object, use.fallback = use.fallback)
和PP <- sum(!is.na(coef(object)))
- 較舊的地方R這是版本length(coef(object))
在未確定係數的情況下(例如,對於秩缺陷模型擬合),該值太大。
值
通常是一個數字,即高斯模型的誤差估計標準偏差 (“residual standard deviation”),以及更難以解釋的更一般模型中每個自由度殘差偏差的平方根。
嚴格來說, (“ 帽子”)實際上是 。
對於廣義線性模型(類 "glm"
),sigma.glm
方法返回色散參數的平方根(請參閱 summary.glm
)。對於具有自由離散參數的族, 是根據 Pearson 殘差的均方根估計的。對於具有固定離散度的族,sigma
不是根據殘差估計的,而是直接從擬合模型的族中提取的。因此,對於二項式或泊鬆 GLM,sigma
恰好為 1。
對於多元線性模型(類 "mlm"
),返回一個 sigmas 向量,每個向量對應於 的一列。
注意
“剩餘標準”的誤稱錯誤” 已經成為太多人的一部分R(和S)輸出可以在那裏輕鬆更改。
例子
## -- lm() ------------------------------
lm1 <- lm(Fertility ~ . , data = swiss)
sigma(lm1) # ~= 7.165 = "Residual standard error" printed from summary(lm1)
stopifnot(all.equal(sigma(lm1), summary(lm1)$sigma, tolerance=1e-15))
## -- nls() -----------------------------
DNase1 <- subset(DNase, Run == 1)
fm.DN1 <- nls(density ~ SSlogis(log(conc), Asym, xmid, scal), DNase1)
sigma(fm.DN1) # ~= 0.01919 as from summary(..)
stopifnot(all.equal(sigma(fm.DN1), summary(fm.DN1)$sigma, tolerance=1e-15))
## -- glm() -----------------------------
## -- a) Binomial -- Example from MASS
ldose <- rep(0:5, 2)
numdead <- c(1, 4, 9, 13, 18, 20, 0, 2, 6, 10, 12, 16)
sex <- factor(rep(c("M", "F"), c(6, 6)))
SF <- cbind(numdead, numalive = 20-numdead)
sigma(budworm.lg <- glm(SF ~ sex*ldose, family = binomial))
## -- b) Poisson -- from ?glm :
## Dobson (1990) Page 93: Randomized Controlled Trial :
counts <- c(18,17,15,20,10,20,25,13,12)
outcome <- gl(3,1,9)
treatment <- gl(3,3)
sigma(glm.D93 <- glm(counts ~ outcome + treatment, family = poisson()))
## equal to
sqrt(summary(glm.D93)$dispersion) # == 1
## and the *Quasi*poisson's dispersion
sigma(glm.qD93 <- update(glm.D93, family = quasipoisson()))
sigma (glm.qD93)^2 # 1.2933 equal to
summary(glm.qD93)$dispersion # == 1.2933
## -- Multivariate lm() "mlm" -----------
utils::example("SSD", echo=FALSE)
sigma(mlmfit) # is the same as {but more efficient than}
sqrt(diag(estVar(mlmfit)))
也可以看看
相關用法
- R simulate 模擬反應
- R stlmethods STL 對象的方法
- R summary.nls 總結非線性最小二乘模型擬合
- R summary.manova 多元方差分析的匯總方法
- R summary.lm 總結線性模型擬合
- R smooth Tukey 的(運行中值)平滑
- R screeplot 屏幕圖
- R sortedXyData 創建一個sortedXyData對象
- R setNames 設置對象中的名稱
- R stat.anova GLM 方差分析統計
- R scatter.smooth 黃土擬合的平滑曲線散點圖
- R splinefun 插值樣條曲線
- R spec.taper 通過餘弦鍾錐化時間序列
- R summary.princomp 主成分分析的匯總方法
- R symnum 符號數字編碼
- R se.contrast 模型術語對比的標準誤差
- R summary.aov 方差模型分析總結
- R stepfun Step Functions - 創建和類
- R shapiro.test 夏皮羅-威爾克正態性檢驗
- R selfStart 構建自啟動非線性模型
- R spec.pgram 通過平滑周期圖估計時間序列的譜密度
- R spec.ar 通過 AR Fit 估計時間序列的頻譜密度
- R smooth.spline 擬合平滑樣條曲線
- R supsmu 弗裏德曼的超級平滑
- R stl Loess 時間序列的季節分解
注:本文由純淨天空篩選整理自R-devel大神的英文原創作品 Extract Residual Standard Deviation 'Sigma'。非經特殊聲明,原始代碼版權歸原作者所有,本譯文未經允許或授權,請勿轉載或複製。