近期,学习ggplot2数据分析与图形艺术(第二版)11.5模型层次的汇总信息时,发现原文代码无法执行,进行了修改
library(dplyr)
library(tidyverse)
library(ggplot2)
models <- txhousing %>%
group_by(city) %>%
do(mod = lm(
log(sales) ~ factor(month),
data = .,
na.action = na.exclude
))
model_sum <- models %>% summarise(glance(mod)) #此处对原文代码进行了修改
model_sum
model_sum<-mutate(model_sum,city=models$city)#增加city列
ggplot(model_sum, aes(r.squared, reorder(city, r.squared))) +
geom_point()
最后,针对这个例子,可以使用如下代码实现
by_city<-txhousing %>% nest_by(city)
by_city=by_city %>% mutate(mod=list(lm(log2(sales)~factor(month),data=data,na.action = na.exclude
)))
by_city %>% summarise(glance(mod))
后续作图原理一样