我编写了一个函数,如下:
x<-c(36,37,45,52,56,58,66,68,75,90,100)
d1<-(length(x)+1)/2
d2<-(floor(d1)+1)/2
fun_z=function(f){
if (f-floor(f)==0)
{y1<-x[f]
y2<-x[length(x)-f+1]}
else
{y1<-(x[floor(f)]+x[floor(f)+1])/2
y2<-(x[floor(length(x)-f)+1]+x[floor(length(x)-f)+2])/2}
return(y1,y2)
}
z<-fun_z(d2)
得到:
> z
$y1
[1] 48.5
$y2
[1] 71.5
然后我想计算 f<-z[2]-z[1]
就出错了.....
请教高手,帮忙看看为什么会这样啊~~~~~~~~