假设我有一个变量在数据框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)?
model = lm(GRADE ~ COURSE + TIME + GH/Y6 + W3/Q0)
waxmsbnn1#
dplyr::select让您可以根据名称、位置(例如,1是第一列)、名称/位置范围、名称中的开始/结束/包含短语等灵活地包含或排除变量。例如,对于列的范围:
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非常类似地完成,例如。
subset
lm(mpg ~ ., data = subset(mtcars, select = c(mpg, cyl:drat, gear:carb)))
型或
lm(mpg ~ ., data = subset(mtcars, select = -(wt:am)))
型
1条答案
按热度按时间waxmsbnn1#
dplyr::select
让您可以根据名称、位置(例如,1
是第一列)、名称/位置范围、名称中的开始/结束/包含短语等灵活地包含或排除变量。例如,对于列的范围:
字符串
或等效地:
@thelatemail有用地指出,大部分功能可以在base R中用
subset
非常类似地完成,例如。型
或
型