我通过
绘制并拟合数据> xyplot(Amplification~Voltage,
data = before_database[before_database$Serial_number==912009913,],
grid = TRUE,
main = "SN = 912009913",
panel = function(x, y) {
panel.xyplot(x, y)
fit<-lm(y ~ poly(x,2))
panel.lines(x, fitted(fit), col.line="black")
})
before_database是我的数据帧(before_database),通过Serial_number我选择数据帧的分组子集。因此,放大与电压相反。
现在我有两个问题:如何从lm拟合中获取相关值?目前,我不太确定我需要哪一个,所以我总体上会问。 此外,如何在拟合的某个点获得相应的值?例如。我需要放大电压= 150(没有数据点)。适合()应该做,但我不相处..
这是情节:
谢谢!
PS:我知道情节不代表数据:)这最终是我找到最佳情节的任务。
编辑:根据讨论,我想首先在xyplot之外拟合模型,因为习惯了它。所以我现在有:
before_database.frame<- read.table("APD_data.txt",
header = TRUE,
sep = "",
dec="."
)
test.frame<- before_database.frame[before_database.frame$Serial_number==912009913, ]
test.fit<- lm(Amplification ~ poly(Voltage,2), data=test.frame)
xyplot(
Amplification ~ Voltage,
data = test.frame,
grid = TRUE,
main = "SN = 91200913",
panel = function(x,y)
{
panel.xyplot(x,y)
panel.lines(x, fitted(test.fit),
col.line="black")
}
)
test.fit$coefficients[1]
new.df<- data.frame(Amplification=150)
predict(test.fit, new.df)
申请&#34;预测&#34;我收到了:
"Error in poly(Voltage, 2, coefs = list(alpha = c(247.536114864865, 174.327996600877 : object 'Voltage' not found"
我想框架&#34; new.df&#34;需要可变电压?但是如何在没有价值的情况下提供呢?
答案 0 :(得分:1)
要在预测变量的新值处预测响应变量,请使用predict
函数而不是fitted
函数。您可以将模型与新数据框一起提供,该数据框具有您要预测的预测变量(x)变量的值。
不确定您想要提取的内容或您想要使用它做什么。运行命令:
methods(class='lm')
将向您展示可用于lm
对象结果的功能,浏览帮助文件(然后深入阅读有趣的文件)可帮助您找到所需信息。