首先,我不是很精通R。我想将我的模型与文献中已经存在的方程进行比较。我的模型如下所示:lm(y ~ x1 + x2 + x3, data = train_df)
,并且已经拟合到我的数据。最好,我想将我的模型与文献中已经存在的模型进行比较,如下所示:y ~ a + bx1 + cx2 + dx3
.我如何将这个已知的公式写成模型,而不需要拟合任何数据?
我尝试运行以下代码Model <- lm(y - a ~ offset(bx1)+ offset(0.89*cx2) + offset (dx3), data = df)
,但这不起作用,并导致新的系数被拟合。
1条答案
按热度按时间nfzehxib1#
这听起来像是你想将你的拟合模型与文献中已知系数a、B、c和d的固定模型进行比较。在这种情况下,你不需要拟合另一个线性模型。相反,你可以编写一个函数,使用给定的系数计算预测值,并将这些预测与你自己的模型的预测进行比较。
下面是一个使用虚构数据集和系数的示例:
1.创建虚拟数据集:
2.适合您的型号:
3.将已知公式写成函数形式:
4.计算两个模型的预测值并进行比较:
5.绘制结果:
这将创建一个散点图,比较您的模型和文献中已知模型的预测。如果点落在虚线附近,则表明您的模型的预测与已知模型的预测相似。
此外,如果您有测试数据集,您可以使用其他指标(如均方误差(MSE)或平均绝对误差(MAE))来比较模型和已知模型的性能。