Lắp mô hình hàm mũ vào dữ liệu


21

Tôi có 2 biến, cả hai từ lớp "số":

> head(y)
[1] 0.4651804 0.6185849 0.3766175 0.5489810 0.3695258 0.4002567

> head(x)
[1] 59.32820 68.46436 80.76974 132.90824 216.75995 153.25551

Tôi đã vẽ chúng và bây giờ tôi muốn điều chỉnh mô hình hàm mũ cho dữ liệu (và thêm nó vào cốt truyện) nhưng tôi không thể tìm thấy bất kỳ thông tin nào về các mô hình phù hợp với dữ liệu đa biến trong R! Chỉ để dữ liệu đơn biến, ai đó có thể giúp đỡ? Tôi thậm chí không biết bắt đầu từ đâu ... Cảm ơn!


6
Điều này hơi khó hiểu. Bạn nói rằng bạn có hai biến "độc lập" (tôi thích "dự đoán" hơn, nhưng điều đó không quan trọng). Bạn có bất kỳ biến "phụ thuộc" / "phản ứng" nào không? Nếu cả hai đều là biến trả lời, tôi có thể tưởng tượng phù hợp với phân phối xác suất tham số, hai biến (có hoặc không có biến dự đoán mà tham số của phân phối phụ thuộc) - hoặc ước tính mật độ hạt nhân 2D. Có lẽ bạn có thể giải thích bối cảnh nhiều hơn một chút. (PS ai ấy upvoting câu hỏi phải biết ý nghĩa của nó ... chăm sóc bất cứ ai để kêu vang trong?)
Bến Bolker

Trong mọi trường hợp, bạn tốt hơn nên truy cập crossvalidated.com cho những câu hỏi như vậy. hoặc đến một trang web tối nghĩa được gọi là Google. Nó đã tìm thấy thông tin về các mô hình phù hợp với dữ liệu đa biến. Khá nhiều (chính xác là 4 triệu hai trăm ba mươi nghìn)
Joris Meys

Tôi muốn giới thiệu bing - rốt cuộc đó là một công cụ quyết định, các công cụ tìm kiếm đã ở thế kỷ 20 ... chỉ cần nhìn vào Yahoo và hỏi Jeeves, ngày nay chúng không liên quan như thế nào?!?
Đuổi theo

@Ben Bolker - Cảm ơn vì đã giúp đỡ, tôi đã lấy độc lập ra, vì nó không đúng. Những gì tôi có là khoảng cách giữa các vị trí (x) và tương quan lượng mưa giữa các vị trí (y)

lưu ý rằng bạn sẽ phải sử dụng các phương pháp đặc biệt nếu bạn muốn suy luận thống kê về các dữ liệu này, bởi vì nếu khoảng cách được tính trên một tập hợp các vị trí chung, chúng không độc lập - tìm kiếm, ví dụ: "Kiểm tra thần chú"
Ben Bolker

Câu trả lời:


20

Tôi không hoàn toàn chắc chắn những gì bạn đang hỏi, vì biệt ngữ của bạn bị tắt. Nhưng giả sử rằng các biến của bạn không độc lập với nhau (nếu có, thì chúng không liên quan để tìm) tôi sẽ thử. Nếu xlà biến độc lập (hoặc dự đoán) ycủa bạn và là biến phụ thuộc (hoặc phản hồi) của bạn, thì điều này sẽ hoạt động.

# generate data
beta <- 0.05
n <- 100
temp <- data.frame(y = exp(beta * seq(n)) + rnorm(n), x = seq(n))

# plot data
plot(temp$x, temp$y)

# fit non-linear model
mod <- nls(y ~ exp(a + b * x), data = temp, start = list(a = 0, b = 0))

# add fitted curve
lines(temp$x, predict(mod, list(x = temp$x)))

cảm ơn câu trả lời của bạn, tôi đã rút từ "độc lập" ra, như bạn đã chỉ ra, nó không có ý nghĩa gì. Sử dụng mã của bạn cho dữ liệu của tôi, tôi có thể phù hợp với mô hình nhưng kết quả là hàng tá dòng trong biểu đồ thay vì chỉ một. Bất cứ ý tưởng tại sao?

@sbg - Không, xin lỗi, tôi không thể nghĩ ra lý do tại sao. Có nls()phù hợp với một mô hình?
Richard Herron

Tôi nghĩ vậy, tôi nhận được: Mô hình mô hình hồi quy phi tuyến: dữ liệu y ~ exp (a + b * x): DF ab -0.55834 -0.002024 tổng bình phương còn lại: 18.62 Số lần lặp để hội tụ: 6 Đạt được dung sai hội tụ: 8.08 e-06

3
@sbg hãy thử sắp xếp xbiến của bạn :lines(sort(temp$x),predict(mod, list(x=sort(temp$x)))
Ben Bolker
Khi sử dụng trang web của chúng tôi, bạn xác nhận rằng bạn đã đọc và hiểu Chính sách cookieChính sách bảo mật của chúng tôi.
Licensed under cc by-sa 3.0 with attribution required.