xem xét mã R sau (trong đó, tôi nghĩ, cuối cùng gọi một số Fortran):Tại sao lm trả lại giá trị khi không có sự sai khác trong giá trị được dự đoán?
X <- 1:1000
Y <- rep(1,1000)
summary(lm(Y~X))
Tại sao các giá trị được trả về bởi tóm tắt? Mô hình này không phù hợp vì không có sự khác biệt trong Y? Quan trọng hơn, tại sao mô hình R^2 ~ = .5?
Sửa
tôi theo dõi các mã từ lm để lm.fit và có thể nhìn thấy cuộc gọi này:
z <- .Fortran("dqrls", qr = x, n = n, p = p, y = y, ny = ny,
tol = as.double(tol), coefficients = mat.or.vec(p, ny), residuals = y,
effects = y, rank = integer(1L), pivot = 1L:p, qraux = double(p),
work = double(2 * p), PACKAGE = "base")
Đó là nơi phù hợp với thực tế dường như xảy ra. Nhìn vào số http://svn.r-project.org/R/trunk/src/appl/dqrls.f) không giúp tôi hiểu chuyện gì đang xảy ra, bởi vì tôi không biết fortran.
Ah, R^2 trong tổng số 0,5 là một câu hỏi khá thú vị. – Iterator
Tôi nghĩ tôi sẽ vứt nó thành một câu hỏi riêng ... – russellpierce