R 如何删除上10%分位数的值

R 如何删除上10%分位数的值,r,quantile,non-linear-regression,R,Quantile,Non Linear Regression,具有以下数据(取自:): #模拟一些数据 种子集(20160227) xBy data您的意思是:x、y或m?无论您想要哪个变量,向量的最简单过滤似乎是z #simulate some data set.seed(20160227) x<-seq(0,50,1) y<-((runif(1,10,20)*x)/(runif(1,0,10)+x))+rnorm(51,0,1) #for simple models nls find good starting values for the

具有以下数据(取自:):

#模拟一些数据
种子集(20160227)

xBy data您的意思是:
x
y
m
?无论您想要哪个变量,向量的最简单过滤似乎是
z
#simulate some data
set.seed(20160227)
x<-seq(0,50,1)
y<-((runif(1,10,20)*x)/(runif(1,0,10)+x))+rnorm(51,0,1)
#for simple models nls find good starting values for the parameters even if it throw a warning
m<-nls(y~a*x/(b+x))
#get some estimation of goodness of fit
cor(y,predict(m))

[1] 0.9496598

#plot
plot(x,y)
lines(x,predict(m),lty=2,col="red",lwd=3)
# prepare data
xy <- as.data.table(cbind(x,y)) 
xy <- xy[-1, ]

# fit line 
fit.nlrq.09 <-  nlrq(y ~ SSmicmen(x, Vm, K), data = xy, tau = 0.90) 
lines(fitted(fit.nlrq.09) ~ x, xy, col=3)