小编Joe*_*p_S的帖子

na.locf删除领先的NAs,保留其他人

na.locfzoo包中的功能有疑问.在下面的数据框架中,我想删除领先的NA(1987年,1988年),但保留前一年(1993年)的有效值.

Year     X
1987     NA
1988     NA
1989     2
1990     5
1991     9
1992     16
1993     NA
1994     27
1995     36
Run Code Online (Sandbox Code Playgroud)

有没有人有这个问题的解决方案?

r zoo na locf

1
推荐指数
1
解决办法
673
查看次数

geom_bar中的条形宽度不相等

对于以下数据框架,我想使用几个条形图ggplot.

df <- data.frame(Disease = c("Disease1","Disease2","Disease3","Disease3","Disease3","Disease4","Disease5","Disease5","Disease6","Disease4","Disease2","Disease2","Disease1","Disease7","Disease1","Disease1","Disease7","Disease6","Disease3","Disease6"),
                   Week = c(3,52,46,47,19,39,42,46,44,45,46,42,45,48,44,44,43,42,45,47),
                   Year = c(2015,2015,2015,2016,2015,2015,2016,2016,2015,2015,2015,2015,2016,2016,2016,2015,2016,2016,2016,2015),
                   Number = c(1,1,6,5,1,1,4,12,4,15,6,15,6,11,4,2,9,1,4,1))
Run Code Online (Sandbox Code Playgroud)

我使用以下语法给出了几个条形图.

ggplot(df, aes(factor(Week), Number )) + 
  geom_bar(stat="identity" , aes(fill = factor(Year)), position = "dodge") + 
  facet_wrap(~ Disease, ncol = 2, scales = "free_y") +
  labs(x = "Week", y = "Number") +
  scale_fill_discrete(name = "Year")
Run Code Online (Sandbox Code Playgroud)

在此输入图像描述

但是,我希望所有条形都具有相同的宽度(参见疾病1的宽度差异).我已经在这里找到了答案.当使用facet_wrap时,geom_bar中的Bars有不同的宽度但我无法在我的示例中使用它.有没有人能解决我的问题?显然,我的原始数据集要大得多,并且不同条宽的问题比上面的例子更常出现.

r ggplot2 geom-bar

1
推荐指数
1
解决办法
759
查看次数

使用 coord_cartesian 缩放后向 ggplot 添加刻度

我在“缩放”后向绘图的 y 轴添加刻度时遇到问题。我coord_cartesian用于缩放,因为 scale_y_continuous 删除了我的一些数据点并重新计算箱线图的值。但是,scale_y_continuous让我有机会使用 eg 指定刻度 scale_y_continuous(limits = c(0,50), breaks = seq(0,50, by=5))。不幸的是,这似乎不适用于coord_cartesian. 有谁知道我如何指定刻度与coord_cartesian?

dat <- data.frame(x = rep(c("X1","X2","X3","X4"),50),
                  y = rep(c("Y1","Y2","Y3","Y4","Y5"),40),
                  z = sample(1:200, 200))

ggplot(dat, aes(x=x, y=z, fill=y)) +
  geom_boxplot() +
  coord_cartesian(ylim=c(0, 50))
Run Code Online (Sandbox Code Playgroud)

r ggplot2

1
推荐指数
1
解决办法
907
查看次数

根据列值对数据框执行多重卡方检验

chisq.test我有一个包含计数的数据框,我想对变量 Cluster 的每个值执行 a 。所以基本上,我需要 4 个列联表(对于“A”、“B”、“C”、“D”),其中行 = 类别,列 = 药物,值 = 总计。随后chisq.test应该对所有 4 个表格运行 a。

示例数据框

df <- data.frame(Cluster = c(rep("A",8),rep("B",8),rep("C",8),rep("D",8)),
                 Category = rep(c(rep("0-1",2),rep("2-4",2),rep("5-12",2),rep(">12",2)),2),
                 Drug = rep(c("drug X","drug Y"),16),
                 Total = as.numeric(sample(20:200,32,replace=TRUE)))
Run Code Online (Sandbox Code Playgroud)

r chi-squared contingency

1
推荐指数
1
解决办法
4465
查看次数

R:kaplan Meier 图中存在风险的对齐数

我正在使用 jskm 包来绘制带有风险数字表的 Kaplan Meier 曲线,但我找不到一种方法使风险数字与 x 轴上的刻度对齐(应该向左移动一点) 。该jskm功能似乎没有选项。我可以以某种方式使用ggplot它吗?

library(survival)
library(jskm)
data(colon)
fit <- survfit(Surv(time,status)~rx, data=colon)
jskm(fit, timeby=500, table = TRUE)
Run Code Online (Sandbox Code Playgroud)

在此输入图像描述

r ggplot2

1
推荐指数
1
解决办法
861
查看次数

标签 统计

r ×5

ggplot2 ×3

chi-squared ×1

contingency ×1

geom-bar ×1

locf ×1

na ×1

zoo ×1