返回

创建包含delta方法的数据框

发布时间:2022-08-29 05:31:51 280
# 数据

我估计了一个回归,其中产量是氮的函数。

yields<-rnorm(50, mean=2000, sd=10)
nitrogen<-rnorm(50, 110, sd=5)
nitrogen_square <- nitrogen^2
reg<-lm(yields~nitrogen+nitrogen_square)
summary(reg)

I have used the delta method to see the marginal effects of nitrogen on yield. I can see the marginal effect of nitrogen at the average value of nitrogen =110

deltaMethod(reg, "(nitrogen*110)+(nitrogen_square*110^2)", vcov(reg))

我想制作一个数据框架,以方便查看在0-110的不同施氮量下,相对于平均施氮量,氮对产量的边际影响的变化。

Nitrogen_avg<-110
Nitrogen_rate<-0:110

A<-deltaMethod(reg, "(nitrogen*Nitrogen_avg)+(nitrogen_square*Nitrogen_avg^2)", vcov(reg))
B<-deltaMethod(reg, "(nitrogen*Nitrogen_rate)+(nitrogen_square*Nitrogen_rate^2)", vcov(reg))
Marg_yield_diff<- A-B

df<- data.frame(Nitrogen_avg, Nitrogen_rate, A, B, Marg_yield_diff)

尝试运行时收到错误代码B<-deltaMethod(reg, "(nitrogen*Nitrogen_rate)+(nitrogen_square*Nitrogen_rate^2)", vcov(reg)). 错误显示Error in row.names < 1L : comparison is not allowed for expressions In addition: Warning messages: 1: In gd[i] <- eval(reg(g., para.names[i]), envir) : number of items to replace is not a multiple of replacement length 2: In gd[i] <- eval(reg(g., para.names[i]), envir) : number of items to replace is not a multiple of replacement length.

我是R新手,正在寻找如何在数据框架中获得此公式的指导。

特别声明:以上内容(图片及文字)均为互联网收集或者用户上传发布,本站仅提供信息存储服务!如有侵权或有涉及法律问题请联系我们。
举报
评论区(0)
按点赞数排序
用户头像