我正在编写一个适合许多glm模型的函数。为了给您提供一些有关该函数的想法,我包含了一小部分代码。在几个 SO 用户的帮助下,该函数现在可以用于我的分析目的。然而,有时,特别是当样本量相对较小时,可能需要相当长的时间才能完成整个过程。为了减少时间,我正在考虑更改迭代最大化的一些细节,例如最大迭代次数。我还没有找到一种方法来做到这一点,也许是因为我仍然不熟悉R术语。任何这样做的建议或其他减少时间的方法将不胜感激。
all_glm <- function(crude, xlist, data, family = "binomial", ...) {
# md_lst include formula for many models to be fitted
comb_lst <- unlist(lapply(1:n, function(x) combn(xlist, x, simplify=F)), recursive=F)
md_lst <- lapply(comb_lst,function(x) paste(crude, "+", paste(x, collapse = "+")))
models <- lapply(md_lst, function(x) glm(as.formula(x), family = family, data = data))
OR <- unlist(lapply(models, function(x) broom::tidy(x, exponentiate = TRUE)$estimate[2]))
}
Run Code Online (Sandbox Code Playgroud)
编辑
感谢@BenBolker指导我找到这个包fastglm,我最终得到了几个r可以提供更快的替代品的包glm。我已经尝试过了fastglm并且speedglm。看来两者都比glm我的机器上快。
library(fastglm)
library(speedglm) …Run Code Online (Sandbox Code Playgroud) 有了这个数据:
df <- data.frame(value =c(20, 50, 90),
group = c(1, 2,3))
Run Code Online (Sandbox Code Playgroud)
我可以得到一个条形图:
df %>% ggplot(aes(x = group, y = value, fill = value)) +
geom_col() +
coord_flip()+
scale_fill_viridis_c(option = "C") +
theme(legend.position = "none")
Run Code Online (Sandbox Code Playgroud)
但我希望这些条形的颜色根据它们在 中的相应值而变化value。
我已经设法使用以下方法更改它们geom_raster:
ggplot() +
geom_raster(aes(x = c(0:20), y = .9, fill = c(0:20)),
interpolate = TRUE) +
geom_raster(aes(x = c(0:50), y = 2, fill = c(0:50)),
interpolate = TRUE) +
geom_raster(aes(x = c(0:90), y = 3.1, fill = c(0:90)),
interpolate = …Run Code Online (Sandbox Code Playgroud) 我正在尝试连接来自 的点geom_jitter()。
df<-data.frame(x = c(1, 1, 2, 2, 3, 3),
y = c(1, 1, 2 , 3, 6, 5),
z = c("A", "B", "A", "B", "A", "B"))
ggplot(df, aes(x = x, y = y, col = z)) +
geom_jitter() +
geom_line()
Run Code Online (Sandbox Code Playgroud)
现在线和点没有连接。
我是新来的sf。在下面的代码中,我生成了两张地图,一张用于美国,一张用于澳大利亚。我想将这两个移动到同一个位置ggplot。我曾尝试改变longitude澳大利亚latitude的价值观geometry。我只是想知道是否有一种快速的方法可以做到这一点。任何建议,将不胜感激。
library(tidyverse)
library(sf)
library(rnaturalearth)
map_au <-ne_states(country = c("australia"), returnclass ="sf") %>%
select(state = name, geometry)
map_us <-ne_states(country = c("united states of america"), returnclass ="sf") %>%
select(state = name, geometry) %>%
filter(!state %in% c("Alaska", "Hawaii"))
ggplot(data = map_us, aes(fill = state))+
geom_sf()+
geom_sf(data = map_au)+
theme(legend.position = "none")
Run Code Online (Sandbox Code Playgroud)
由reprex 包于 2020 年 11 月 4 日创建(v0.3.0)
---
output:
word_document: default
---
```{r setup, include=FALSE}
data("mtcars")
library(tidyverse)
library(xtable)
library(sjPlot)
library(kableExtra)
```
```{r, results='asis'}
df <- mtcars %>%
group_by(cyl) %>%
summarise(disp = mean(disp),
wt = mean(wt),
n = n()
)
kable(df)
# tab_df(df)
# xtable(df)
```
Run Code Online (Sandbox Code Playgroud)
我已经尝试过xtable、tab_df、 和kable生成带有表格的Word文档。当“编织到 HTML 文档”时,所有表格看起来都很好。当“knit to Word”时,xtable 不显示表格tab_df,而是kable生成一个只有一列的表格:
kable(df)
cyl
disp
wt
n
4
105.1364
2.285727
Run Code Online (Sandbox Code Playgroud)