2009-07-25 69 views
22

Các chức năng nào bạn sử dụng trong R để vừa với đường cong đến dữ liệu của bạn và kiểm tra đường cong phù hợp như thế nào? Kết quả nào được coi là tốt?Các chức năng phù hợp trong R

+0

Tôi đã sử dụng phần mềm thương mại để thử nhiều công thức (lấy giờ làm việc, nếu bạn muốn) để tìm phù hợp nhất. Tôi rất muốn tìm một cái gì đó như thế trong R. – Nosredna

+1

Thất vọng - Tôi nghĩ R là miền số thực. –

Trả lời

25

Chỉ phần đầu tiên của câu hỏi đó có thể lấp đầy toàn bộ sách. Chỉ cần một số lựa chọn nhanh chóng:

  • lm() cho các mô hình tuyến tính chuẩn
  • glm() cho các mô hình tuyến tính tổng quát hóa (ví dụ cho hồi quy logistic)
  • rlm() từ gói MASS cho các mô hình tuyến tính mạnh mẽ
  • lmrob() từ gói robustbase cho mạnh mẽ mô hình tuyến tính
  • loess() cho các mô hình phi tuyến tính/phi tham số

Sau đó, có các mô hình theo tên miền cụ thể, ví dụ: chuỗi thời gian, kinh tế vi mô, hiệu ứng hỗn hợp và nhiều hơn nữa. Một số Chế độ xem tác vụ, ví dụ: Econometrics thảo luận chi tiết hơn. Đối với sự tốt đẹp của sự phù hợp, đó cũng là một cái gì đó người ta có thể chi tiêu một cách dễ dàng toàn bộ một cuốn sách thảo luận.

+0

Bất kỳ đề xuất nào cho sách hoặc trang web tốt về sự phù hợp? –

7

Chức năng nls() (http://sekhon.berkeley.edu/stats/html/nls.html) khá chuẩn đối với đường cong hình vuông nhỏ nhất phi tuyến. Chi bình phương (tổng số dư bình phương) là số liệu được tối ưu hóa trong trường hợp đó, nhưng nó không được chuẩn hóa nên bạn không thể dễ dàng sử dụng nó để xác định mức độ phù hợp. Điều chính bạn nên đảm bảo là số dư của bạn thường được phân phối. Thật không may là tôi không chắc chắn về một cách tự động để làm điều đó.

10

Các workhorses của đường cong kinh điển phù hợp trong R là lm(), glm()nls(). Đối với tôi, sự tốt đẹp của sự phù hợp là một vấn đề nhỏ trong vấn đề lớn hơn về lựa chọn mô hình. Infact, sử dụng tính đúng đắn của không phù hợp (ví dụ, thông qua hồi quy từng bước) có thể làm phát sinh mô hình bị lỗi nghiêm trọng (xem sách của Harrell về "Chiến lược mô hình hồi quy"). Thay vì thảo luận vấn đề từ đầu, tôi khuyên bạn nên sử dụng sách của Harrell cho lmglm. Venables và kinh thánh của Ripley thật đáng sợ, nhưng vẫn đáng đọc. "Mở rộng mô hình tuyến tính với R" của Faraway là toàn diện và dễ đọc. nls không được đề cập trong các nguồn này, nhưng "Regression Nonlinear with R" của Ritz & Streibig lấp đầy khoảng trống và rất thực tế.

3

Điều chính bạn nên đảm bảo là rằng số dư của bạn thường là được phân phối. Rất tiếc, tôi không phải là một cách tự động để thực hiện điều đó.

qqnorm() có thể được sửa đổi để tìm mối tương quan giữa số lượng mẫu và lượng tử lý thuyết. Về cơ bản, đây chỉ là một giải thích số của âm mưu lượng tử bình thường. Có lẽ việc cung cấp một vài giá trị của hệ số tương quan cho các phạm vi khác nhau của các lượng tử có thể hữu ích.Ví dụ, nếu hệ số tương quan gần bằng 1 cho trung bình 97% dữ liệu và thấp hơn nhiều ở đuôi, điều này cho chúng ta biết sự phân bố số dư là gần như bình thường, với một số sự hài hước xảy ra ở đuôi.

+0

'shapiro.test()' cũng có thể phù hợp – DaveRGP

2

Tốt nhất để giữ đơn giản và xem liệu các phương pháp tuyến tính có hoạt động tốt hay không. Bạn có thể đánh giá sự tốt lành của bạn phù hợp với GENERALLY bằng cách nhìn vào số liệu thống kê R bình phương và F, cùng nhau, không bao giờ tách rời. Việc thêm các biến vào mô hình của bạn mà không có biến nào trên biến phụ thuộc của bạn có thể tăng R2, vì vậy bạn cũng phải xem xét thống kê F.

Bạn cũng nên so sánh mô hình của mình với các mô hình lồng nhau hoặc đơn giản hơn. Làm điều này bằng cách sử dụng kiểm tra tỷ lệ đăng nhập liklihood, miễn là các biến phụ thuộc giống nhau.

Kiểm tra Jarque-Bera là tốt để kiểm tra tính bình thường của phân phối còn lại.

Các vấn đề liên quan