Selon la description du package mcr
, l'erreur standard semble ne pas être disponible directement. Donc, dans ce cas, vous devez recalcule et la réécriture d'une fonction spécifique suivant les principes décrits here et here
Si nous prenons l'exemple mcreg
description de la fonction, nous avons:
# requirements
library("mcr")
data(creatinine,package="mcr")
x <- creatinine$serum.crea
y <- creatinine$plasma.crea
# Deming regression fit.
# The confidence intercals for regression coefficients
# are calculated with analytical method
model1<- mcreg(x,y,error.ratio=1,method.reg="Deming", method.ci="analytical",
mref.name = "serum.crea", mtest.name = "plasma.crea", na.rm=TRUE)
# Results
printSummary(model1)
getCoefficients(model1)
plot(model1)
qui donne les résultats suivants et la figure:
# ------------------------------------------
#
# Reference method: serum.crea
# Test method: plasma.crea
# Number of data points: 108
#
# ------------------------------------------
#
# The confidence intervals are calculated with analytical method.
# Confidence level: 95%
# Error ratio: 1
#
# ------------------------------------------
#
# DEMING REGRESSION FIT:
#
# EST SE LCI UCI
# Intercept -0.05891341 0.04604315 -0.1501984 0.03237162
# Slope 1.05453934 0.03534361 0.9844672 1.12461148
# NULL
Vous avez donc votre interception & pente, comme il est écrit dans le graphique et vous avez juste à coder le calcul standard.error
comme suit par exemple:
f.reg <- function(x){
y <- x * 1.05453934 - 0.05891341
return(y)
}
y.hat <- f.reg(x)
n.items <- length(y.hat)
# please note that y has 'NA' values so you have to filter them
standard.error <- sqrt(sum((y[ !is.na(y)]-y.hat[ !is.na(y)])^2)/n.items)
# > standard.error
# [1] 0.1566329
Je suggère d'utiliser le package Deming. Voir ici: http://stats.stackexchange.com/a/174549/11849 – Roland