Сочетание нескольких столов регрессии в один для использования в Xtable с Sweave в R
Вопрос
xtable
в Sweave
Работает потрясающе, но делает один стол на регрессию. Вы также можете накормить его рамка данных, поэтому я был вручную rbind
и paste
Результаты в кадры данных, но это не кажется очень масштабируемым.
Есть ли более автоматическое / прочное решение, которое работает как xtable
, но на нескольких lm
объекты? Все ли столы, которые я вижу в документах / книгах, созданных вручную? Есть ли лучший раствор моего янского кода, который генерирует кадр данных для подачи в xtable
?
library(reshape2)
data <- data.frame(matrix(rnorm(50), 10, 5))
names(data) <- letters[1:5]
l.raw <- list()
l.raw[["a"]] <- lm(a ~ d + e, data=data)
l.raw[["b"]] <- lm(b ~ d + e, data=data)
l.raw[["c"]] <- lm(c ~ d + e, data=data)
form.table.from.lm <- function(l.raw) {
summ <- list()
for (i in names(l.raw)) {
temp <- coef(summary(l.raw[[i]]))
summ[[i]] <- data.frame(param=rownames(temp), test=i, temp)
}
df.res <- do.call("rbind", summ)
df.res <- transform(df.res, t.value = paste("(", signif(t.value), ")", sep=""), Estimate = signif(Estimate))
df.res.long <- melt(df.res, id.vars=c("test", "param"))
df.res.wide <- dcast(df.res.long, test + variable ~ param)
temp <- subset(df.res.wide, variable %in% c("Estimate", "t.value"))
df.res <- temp[, -2]
df.res[, 1] <- as.vector(rbind(names(l.raw), ""))
colnames(df.res)[1] <- "regressor"
return(df.res)
}
Который производит кадр данных:
regressor (Intercept) d e
1 a 0.393996 -0.666721 0.159508
2 (0.573926) (0.422125) (0.526446)
5 b 0.611077 0.0288942 -0.70033
6 (0.32696) (0.24048) (0.299911)
9 c -0.101033 -0.287821 0.14581
10 (0.203193) (0.149449) (0.186383)
Учитывая удивительные построенные пакеты для R, я чувствую себя как Google, и RSEEK что-то скрывает от меня.
Решение
Некоторое время назад я наткнулся на outreg
Функция Пол Джонсону.
Вы можете напрямую применить outreg
на ваш lm
объект и комбинировать несколькоlm
выводит в один, хороший латексный стол.
Здесь вы найдете пример .pdf
и код для функции
Главная страница Павла Джонсона
Другие советы
Ваш код бросил ошибки для меня в вызове DCA, поэтому я просто прочитал на выходе, который вы предложили, и отрегулировали колики, чтобы соответствовать. Этот код производит хорошо сформированный PDF-файл в моей системе после прохождения его через мой латексный процессор. (Я предполагаю, что у вас есть соответствующая установка латекса, если вы уже используете SWEAVE.)
require(Hmisc)
latex(df.res)
Когда я прошел пример в справке (LMLIST) в пакете LME4 LATEX (), также создает довольно большой дисплей и разыследуйте 4 страницы.
require(lme4)
(fm1 <- lmList(Reaction ~ Days | Subject, sleepstudy))
latex(fm1)
Ссылка Outreg в принятом ответе сломана сейчас. Новая ссылка
http://pj.freefaculty.org/stat/ps706/outreg-worked.r.
Существует также сопроводительный PDF в родительской папке.
Проверьте apsrtable. Табличный пакет в Cran, который создает таблицы стилей в американских политических науках, которые выглядят примерно так, как я думаю, вы хотите. Требуется модели LM и GLM, а также некоторые нелинейные модели из некоторых пакетов. Он также имеет длинную серию вариантов для создания звезд на определенные уровни и такое. Есть хорошая вингта И он генерирует как латексные, так и HTML-таблицы, которые затем могут быть добавлены к OpenOffice / Word.
Я использовал его в течение 2-3 лет, и он продолжает быть под активным развитием. Я только что посмотрел быстро, но кажется гораздо более прочным / отличным, чем outreg.
Вот еще один варианты, которые я видел, идет Клюква Это напомнило мне об этом вопросе:
Texreg - глядя на винт, Похоже, что это действительно хорошая работа по созданию симпатичных стандартных столов регрессии в R и которая находится под очень активным развитием во время письма.
Обновлять: Я играю с несколькими из них, и я думаю, что со временем, Texreg Стал лидером лидера в этом пространстве с точки зрения ИТ погашения, стабильности и предметности. Наиболее важные для меня, это работает с различными моделями и удивительно удобно, как Bootstrap стандартные ошибки, чтобы построить звезды для lme4()
Модели - то, что сама пакет делает немного сложно, чтобы получить (по веским причинам), но эти рецензенты и журналы часто требуют тем не менее. Я решительно рекомендую использовать Texreg. Кажется, это активно поддерживается.
Пакет звезда Будет ли другой вариант для таблиц HTML, LATEX или ASCII, бок о бок. Смотри также мой отвечать к Таблица нескольких моделей LM () с использованием APSrtable в Rmarkdown который включает в себя скриншот.