我想创建一个线性回归模型来预测使用两个不同系数的输出,这个系数根据数据中的某个阈值。例如: df:开启和关闭系数R线性回归
Value Temperature
8.2 70
3.2 51
5.8 54
7.2 61
等等。对于这个数据,我想弄清楚如何进行以下模型:
值= B0 + B1(HighTemp)+ B2(LowTemp)
其中,B1是0,如果温度低于55,和B2是0是温度高于55 我试过如下:
fit = lm(Value ~ I(Temperature > 55), data = df)
fit2 = lm(Value ~ Temperature * I(Temperature > 55), data = df)
fit
只给我当温度高于55的系数,并给出了fit2
输出,我不完全理解。我还在考虑创建第三列HighorLow
,并使用指示变量(1或0)确定温度是高还是低。我会:
fit = lm(Value ~ Temperature:HighorLow, data = df)
有没有人有任何输入?我将不胜感激任何帮助。
这将给出截距和Temp_thresholdTRUE的值。我假设当温度大于55时,温度项的系数。但是对于低于55的项,系数如何?我认为可能有一个根本的概念,我没有抓住。 – 2015-02-06 18:25:06
你可能想要阅读一些回归。简短的回答 - 既然你有两组要比较(Temp_thresholdTRUE和Temp_thresholdFalse),回归会隐式计算一个相对于另一个的coeff,没有两个系数。因此,Temp_thresholdTRUE的系数将TemperatureTRUE与TemperatureFALSE(假定其对简单性没有影响)相比的效果进行量化。 – keegan 2015-02-06 19:17:03