Sıklıkla, elde edilen farkın makine hassasiyetinin üzerinde olup olmadığını kontrol etmek gerektiğinde ortaya çıkar. Bu amaçla Ar kullanışlı değişkeni için gibi görünüyor: .Machine$double.eps
. Ancak bu değeri kullanma yönergeleri için R kaynak koduna döndüğümde birden çok farklı desen görüyorum.
Örnekler
stats
Kitaplıktan birkaç örnek :
t.test.R
if(stderr < 10 *.Machine$double.eps * abs(mx))
chisq.test.R
if(abs(sum(p)-1) > sqrt(.Machine$double.eps))
integrate.R
rel.tol < max(50*.Machine$double.eps, 0.5e-28)
lm.influence.R
e[abs(e) < 100 * .Machine$double.eps * median(abs(e))] <- 0
princomp.R
if (any(ev[neg] < - 9 * .Machine$double.eps * ev[1L]))
vb.
Sorular
- İnsan nasıl bu farklı tüm arkasındaki mantık anlayabilir
10 *
,100 *
,50 *
vesqrt()
değiştiricileri? .Machine$double.eps
Kesinlik sorunlarından kaynaklanan farklılıkları ayarlamak için kullanma hakkında yönergeler var mı?
double.eps
. Bir kayan noktalı sayı üzerinde birkaç işlem yapıyorsanız, hata toleransınız da ayarlanmalıdır. Bu yüzden all.equal size bir tolerance
argüman verir .