Tôi muốn tính toán hồi quy tuyến tính bằng hàm lm() trong R. Ngoài ra tôi muốn lấy độ dốc của hồi quy, trong đó tôi cho phép chặn một cách rõ ràng lm()
.Hồi quy tuyến tính với đường chặn cố định đã biết trong R
Tôi tìm thấy một ví dụ trên internet và tôi đã cố gắng đọc R-help "? Lm" (tiếc là tôi không thể hiểu được nó), nhưng tôi đã không thành công. Bất cứ ai có thể cho tôi biết sai lầm của tôi ở đâu?
lin <- data.frame(x = c(0:6), y = c(0.3, 0.1, 0.9, 3.1, 5, 4.9, 6.2))
plot (lin$x, lin$y)
regImp = lm(formula = lin$x ~ lin$y)
abline(regImp, col="blue")
# Does not work:
# Use 1 as intercept
explicitIntercept = rep(1, length(lin$x))
regExp = lm(formula = lin$x ~ lin$y + explicitIntercept)
abline(regExp, col="green")
Than phiền giúp bạn.
hoặc 'I (x - 1,0) ~ y-1' surpresses cho phù hợp của các đánh chặn là tốt. –
@Joris Meys: Có. Tôi tin rằng hai cách là đồng nghĩa. Tôi đã chọn cách khác để tránh có hai từ '-1' và phải giải thích cái nào. – NPE
Nhưng khi tôi vẽ đường cong hồi quy đường cong (regExp, col = "green"), nó không đi qua 1. Tôi chưa tìm ra cách để trích xuất độ dốc (và/hoặc chặn) từ lm ouput. Đối với mee nó có vẻ là bạn luôn luôn phải biết vị trí của các giá trị trong mảng coef, và hơn trích xuất trong (và hy vọng rằng vị trí là đúng). Vì vậy, là đoạn mã sau "đường vàng" để vẽ đường cong hồi quy chính xác? 'abline (b = coef (regExp) [1], a = clearIntercept, col =" green ")' –