我na.locf
对zoo
包中的功能有疑问.在下面的数据框架中,我想删除领先的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)
有没有人有这个问题的解决方案?
对于以下数据框架,我想使用几个条形图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有不同的宽度但我无法在我的示例中使用它.有没有人能解决我的问题?显然,我的原始数据集要大得多,并且不同条宽的问题比上面的例子更常出现.
我在“缩放”后向绘图的 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) 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) 我正在使用 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)