R:这两种功能有什么区别

R:这两种功能有什么区别,r,R,我一辈子都搞不懂为什么这两个函数会产生不同的答案,它们都做相同的事情 avocado = function(Tx,Tn,P,b1=17.71,b2=-0.29,b3=3.25,b4=-0.14,b5=1.00,b6=-0.31,b7=-288.09){ yield_anomaly = (b1*Tx)+(b2*(Tx^2))+(b3+Tn)+(b4*(Tn^2))+(b5*P)+(b6*(P^2))+b7 return(yield_anomaly) } avocado(Tx=34,Tn=

我一辈子都搞不懂为什么这两个函数会产生不同的答案,它们都做相同的事情

avocado = function(Tx,Tn,P,b1=17.71,b2=-0.29,b3=3.25,b4=-0.14,b5=1.00,b6=-0.31,b7=-288.09){
  yield_anomaly = (b1*Tx)+(b2*(Tx^2))+(b3+Tn)+(b4*(Tn^2))+(b5*P)+(b6*(P^2))+b7
  return(yield_anomaly)
}

avocado(Tx=34,Tn=17,P=2) #Answer = -40.65 tons/acre
而产生错误答案的那个

avo.yield = function(tmax, tmin, prcp,tmax.c1=17.71, tmax.c2 = -0.29, tmin.c1 = 3.25, tmin.c2 = -0.14, prcp.c1=1, prcp.c2 = -0.31){
  yeild = (tmax.c1*tmax)+(tmax.c2*(tmax^2)) + (tmin.c1*tmin)+(tmin.c2*(tmin^2)) + (prcp.c1*prcp)+(prcp.c2*(prcp^2)) - 288.09
  return(yeild)
}

avo.yield(tmax=34, tmin=17, prcp=2)  #answer -5.64

在第一个函数中

(b3+Tn)
(tmin.c1*tmin)
在第二个函数中

(b3+Tn)
(tmin.c1*tmin)

在第一个函数中,一个是乘法,一个是加法

(b3+Tn)
(tmin.c1*tmin)
在第二个函数中

(b3+Tn)
(tmin.c1*tmin)

在第一个函数中,一个是乘法,一个是加法

(b3+Tn)
(tmin.c1*tmin)
在第二个函数中

(b3+Tn)
(tmin.c1*tmin)

在第一个函数中,一个是乘法,一个是加法

(b3+Tn)
(tmin.c1*tmin)
在第二个函数中

(b3+Tn)
(tmin.c1*tmin)
一个是乘法,一个是加法