Re: [问题] 如何转化数字

楼主: celestialgod (天)   2016-04-30 01:24:42
※ 引述《laputaca (离歌笑)》之铭言:
: 各位大大好
: 小弟做了一个逐步回归 得到类似这样的结果
: > result$call
: lm(formula = y ~ `15` + `16` + `17` + `25` + `28` , data = data)
: 想请问我该如何将`15` ,`16` , `17` , `25` , `28` 这些变量转化成数字呢?
: 也就是得到 15,16,17,25,28
: 我有尝试硬转
: 如: as.numeric(names(result$aliased)[-1])
: 结果明显是不行的XDD
: 请求各位大大帮忙
有一个函数叫做all.vars,可以试一下
dat <- data.frame(rnorm(100), rnorm(100), rnorm(100))
names(dat) <- c("y", "15", "16")
lm_object <- lm(y ~ `15` + `16`, dat)
lm_call <- lm_object$call
一般解法:
vars_formula <- all.vars(lm_call$formula)
as.integer(vars_formula[2:length(vars_formula)])
套用 %>%:
library(magrittr)
lm_call %>% .$formula %>% all.vars %>% .[2:length(.)] %>% as.integer
套用 %>>%:
library(pipeR)
lm_call %>>% (formula) %>>% all.vars %>>% (.[2:length(.)]) %>>% as.integer
作者: laputaca (离歌笑)   2016-04-30 14:19:00
非常感谢大大 ! 我试试成功!! 顺便补推~

Links booklink

Contact Us: admin [ a t ] ucptt.com