R公式指定

nr7wwzry  于 2023-11-14  发布在  其他
关注(0)|答案(1)|浏览(114)

假设我有一个变量在数据框Data1中

STUDENT COURSE  GRADE   TIME    FEUW    GH  X1  Y6  U9  W3  Q0

字符串
并希望创造这种模式

model = lm(GRADE ~ COURSE + TIME + GH + X1 + Y6 + W3 + Q0)


有没有一种方法可以缩短变量名的类型,例如,我可以说
model = lm(GRADE ~ COURSE + TIME + GH/Y6 + W3/Q0)

waxmsbnn

waxmsbnn1#

dplyr::select让您可以根据名称、位置(例如,1是第一列)、名称/位置范围、名称中的开始/结束/包含短语等灵活地包含或排除变量。
例如,对于列的范围:

lm(mpg ~ ., data = dplyr::select(mtcars, mpg, cyl:drat, gear:carb))

字符串
或等效地:

lm(mpg ~ ., data = dplyr::select(mtcars, -(wt:am)))`
> mtcars
                     mpg cyl  disp  hp drat    wt  qsec vs am gear carb
Mazda RX4           21.0   6 160.0 110 3.90 2.620 16.46  0  1    4    4
Mazda RX4 Wag       21.0   6 160.0 110 3.90 2.875 17.02  0  1    4    4
Datsun 710          22.8   4 108.0  93 3.85 2.320 18.61  1  1    4    1
Hornet 4 Drive      21.4   6 258.0 110 3.08 3.215 19.44  1  0    3    1
...

dplyr::select(mtcars, mpg, cyl:drat, gear:carb)
                     mpg cyl  disp  hp drat gear carb
Mazda RX4           21.0   6 160.0 110 3.90    4    4
Mazda RX4 Wag       21.0   6 160.0 110 3.90    4    4
Datsun 710          22.8   4 108.0  93 3.85    4    1
Hornet 4 Drive      21.4   6 258.0 110 3.08    3    1
...

@thelatemail有用地指出,大部分功能可以在base R中用subset非常类似地完成,例如。

lm(mpg ~ ., data = subset(mtcars, select = c(mpg, cyl:drat, gear:carb)))


lm(mpg ~ ., data = subset(mtcars, select = -(wt:am)))

相关问题