如何在R中为我的数据获取黄土函数?

如何在R中为我的数据获取黄土函数?,r,plot,nonlinear-functions,R,Plot,Nonlinear Functions,我有一些数据,我用R把它们画在一个图上。 然后,我画了关于数据的黄土函数。 代码如下: data <- read.table("D:/data.csv", header=TRUE, sep=",", na.strings="NA", dec=".", strip.white=TRUE) ur <- subset(data, select = c(users,responseTime)) ur <- ur[with(ur, order(users, responseTime)),

我有一些数据,我用R把它们画在一个图上。 然后,我画了关于数据的黄土函数。 代码如下:

data <- read.table("D:/data.csv", header=TRUE, sep=",", na.strings="NA", dec=".", strip.white=TRUE)
ur <- subset(data, select = c(users,responseTime))
ur <- ur[with(ur, order(users, responseTime)), ]

plot(ur, xlab="Users", ylab="Response Time (ms)")
lines(ur)
loess_fit <- loess(responseTime ~ users, ur)
lines(ur$users, predict(loess_fit), col = "blue")

data您可以使用代码中的
u-fit
对象来预测响应时间。如果要估计230个用户的平均响应时间,可以执行以下操作:

predict(loess_fit, newdata=data.frame(users=230))
关于这个问题,这里有一个有趣的例子

编辑:如果你想对数据之外的值进行预测,你需要一个理论或进一步的假设。最简单的假设是线性拟合

lm_fit <- lm(responseTime ~ users, data=ur)
predict(lm_fit, newdata=data.frame(users=400))

TeachingDemos包中的
lm_-fitleash.demo
函数显示了leash-fit的基本逻辑。这可以帮助您了解发生了什么以及为什么没有一个简单的预测函数。但是,对于预测,有一个
predict
函数可用于创建预测。您还可以找到预测特定x值的线性方程(但对于您可能要预测的每个x值,它都会有所不同)。

没有简单的“黄土函数”。这是局部分段拟合。如果你使用
less
你是在暗示“我对结果的形式没有任何理论”。我想要的是创建一个函数,当我知道有多少用户时,我可以预测响应时间。也许使用黄土是错误的,但它似乎适合我的数据。黄土是适合数据的,但也许你想要的是多项式或样条曲线拟合?你知道R如何帮助我创建该函数,预测响应时间吗?谢谢你的回答。这项工作的用户,直到250我有数据。如果我想要更多?例如,400个用户。