Tìm phương trình từ đầu ra mô hình tuyến tính tổng quát


9

Hãy nói rằng tôi tạo xác suất của một kết quả dựa trên một yếu tố nhất định và vẽ đường cong của kết quả đó. Có cách nào để trích xuất phương trình cho đường cong đó từ R không?

> mod = glm(winner~our_bid, data=mydat, family=binomial(link="logit"))
> summary(mod)

Call:
glm(formula = winner ~ our_bid, family = binomial(link = "logit"), 
    data = mydat)

Deviance Residuals: 
    Min       1Q   Median       3Q      Max  
-0.7443  -0.6083  -0.5329  -0.4702   2.3518  

Coefficients:
              Estimate Std. Error z value Pr(>|z|)    
(Intercept) -9.781e-01  2.836e-02  -34.49   <2e-16 ***
our_bid     -2.050e-03  7.576e-05  -27.07   <2e-16 ***
---
Signif. codes:  0 ‘***’ 0.001 ‘**’ 0.01 ‘*’ 0.05 ‘.’ 0.1   1 

(Dispersion parameter for binomial family taken to be 1)

    Null deviance: 42850  on 49971  degrees of freedom
Residual deviance: 42094  on 49970  degrees of freedom
AIC: 42098

Number of Fisher Scoring iterations: 4

> all.x <- expand.grid(winner=unique(winner), our_bid=unique(our_bid))
> all.x
> won = subset(all.x, winner == 1)
> y.hat.new <- predict(mod, newdata=won, type="response")
> options(max.print=5000000)
> y.hat.new
> plot(our_bid<-000:1000, predict(mod, newdata=data.frame(our_bid<-c(000:1000)),
       type="response"))

nhập mô tả hình ảnh ở đây

Làm thế nào tôi có thể đi từ đường cong xác suất này đến một phương trình trong R? Tôi đã hy vọng cho một cái gì đó như:

Probability = -0.08*bid3 + 0.0364*bid2 - 0.0281*bid + 4E-14

2
Không giống như ví dụ trong mã của bạn, có một biến độc lập (giá thầu) và do đó vẽ đồ thị dưới dạng đường cong trong mặt phẳng (giá thầu, xác suất), ví dụ trong phần chỉnh sửa của bạn ở cuối sẽ không vẽ dưới dạng đường cong: nó sẽ là ba hypersurface -dimensional âm mưu trong bốn chiều (giá thầu, giá thầu2, giá thầu3, xác suất).
whuber

Câu trả lời:


15

xxEstimate

              Estimate Std. Error z value Pr(>|z|)    
(Intercept) -9.781e-01  2.836e-02  -34.49   <2e-16 ***
our_bid     -2.050e-03  7.576e-05  -27.07   <2e-16 ***

Xác suất mà bạn muốn vẽ, có liên quan đến tỷ lệ cược đăng nhập bằng cách

probability=11+exp(log odds).

R gọi đây là hàm "nghịch đảo logit" , inv.logit.

Đặt những thứ này lại với nhau sẽ cho phương trình

probability=11+exp([0.97810.00205x]).

Một lệnh R để vẽ nó sẽ là

plot(inv.logit(-0.9781 - 0.00205*(0:1000)))

Lô đầu ra

Nói chung, bạn nên trích xuất các hệ số này bằng coefficientslệnh thay vì phiên mã chúng (như tôi đã làm ở đây, vì tôi không có quyền truy cập vào dữ liệu của bạn).


3
Hmisc::latexLATEXlatex(fit.1)
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.