是否有一种方法可以在连续变量和类别变量之间使用交互项,但不包括连续变量本身,从而使用R进行线性回归?
我正在研究房屋租金与居住面积之间的关系。我的数据集中有四个不同的区域,我假设它们之间的关系是不同的。我正在使用rent
上的region
的线性回归以及floorspace
和region
之间的相互作用,我想在region
和相互作用项上具有系数,但是将lm
与交互作用项一起使用也会迫使floorspace
出现为自变量。
就是这样:
lm(formula = rent ~ factor(region) + factor(region) * floorspace,
data = mydataset)
Coefficients:
Estimate Std. Error t value Pr(>|t|)
(Intercept) 4.67252 0.06792 68.792 < 2e-16 ***
factor(region)2 -0.39859 0.09453 -4.216 2.52e-05 ***
factor(region)3 -0.23631 0.17870 -1.322 0.186078
factor(region)4 -0.49076 0.10329 -4.751 2.07e-06 ***
floorspace -0.38658 0.01539 -25.119 < 2e-16 ***
factor(region)2:floorspace 0.20481 0.02145 9.550 < 2e-16 ***
factor(region)3:floorspace -0.00884 0.03987 -0.222 0.824552
factor(region)4:floorspace 0.08022 0.02348 3.416 0.000638 ***
我想要的是这个
Coefficients:
Estimate Std. Error t value Pr(>|t|)
(Intercept) 4.67252 0.06792 68.792 < 2e-16 ***
factor(region)2 -0.39859 0.09453 -4.216 2.52e-05 ***
factor(region)3 -0.23631 0.17870 -1.322 0.186078
factor(region)4 -0.49076 0.10329 -4.751 2.07e-06 ***
factor(region)1:floorspace -0.38658 0.01539 -25.119 < 2e-16 ***
factor(region)2:floorspace -0.18177 ??????? ????? ???????
factor(region)3:floorspace -0.39543 ??????? ????? ???????
factor(region)4:floorspace -0.30636 ??????? ????? ???????
原因是,从解释的角度来看,更有意义的是分别显示每个区域的floorspace
效果,而不是将region=1
与floorspace
一起显示,其余显示为给定区域和region=1
答案 0 :(得分:1)
首先,我将使用以下内容建立测试数据集:<div id="map" leaflet
[leafletOptions]="options"
[leafletLayers]="layers"
[leafletFitBounds]="fitBounds">
</div>
通过减去在公式中mydataset = data.frame(rent=runif(100), region=sample(1:4, 100,TRUE), floorspace=runif(100))
中的线性项:
floorspace