2012-02-06 3 views
4

Я моделирую много данных для разных компаний, и для каждой компании мне нужно быстро определить те параметры модели, которые являются наиболее значимыми. То, что я хотел бы видеть, - xtable() выход для модели, которая сортирует все коэффициенты в порядке возрастания p-значения (т. Е. Наиболее важные параметры).Сортировка xtable() вывода по p-значению из резюме модели glm

x <- data.frame(a=rnorm(100), b=runif(100), c=rnorm(100), e=rnorm(100)) 
fit <- glm(a ~ ., data=x) 
xtable(fit) 

Я угадывание что я могу быть в состоянии сделать что-то вроде этого, баловаться с структурой fit объекта. Но я не знаком со структурой, чтобы иметь возможность уверенно что-то менять.

Предложения?

+0

'ул()' является вашим другом, если вы хотите, чтобы осмотреть объект R. :-) – chl

ответ

6

Не обязательно самое элегантное решение, но это должно сделать работу:

data(birthwt, package="MASS") 
glm.res <- glm(low ~ ., data=birthwt[,-10]) 
idx <- order(coef(summary(glm.res))[,4]) # sort out the p-values 
out <- coef(summary(glm.res))[idx,]  # reorder coef, SE, etc. by increasing p 
library(xtable) 
xtable(out) 

enter image description here

+3

Кажется разумным прямым. Правильно использует функции экстрактора. Что не нравится? –

+0

Это именно то, что я хочу. Благодаря chl. –

Смежные вопросы