如何解决如何在带有自由刻度的facet_wrap中使用ggpubr或rstatix为多比较统计信息申请循环
我对编码非常陌生,并且一直在自学R。我尝试编写一些代码以对带有自由比例的facet_wrap图执行多个比较统计,但是我无法弄清楚如何在facet中实现for循环。另外,我也尝试使用rstatix软件包进行统计,但是我无法打印使用ggpubr的stat_compare_means函数或rstatix的stat.test计算出的t检验的p值,因为我一直在努力找出问题所在。带有自由刻度的构面的y_position。这是我编写的代码:
library(tidyverse)
library(dplyr)
library(ggplot2)
library(readxl)
library(scales)
library(stringr)
library(extrafont)
library(viridisLite)
#library(RColorBrewer)
library(ggpubr)
library(reshape2)
library(rstatix)
#library(plotly)
#library(ggpmisc)
LungExtracellularPanel <- read_excel("~/Box/Welm Labs Ubox/Pavitra Viswanath/Flow Cytometry/PVIMM-2 E0771 09-01-2020/Data Analysis/Lung 09-16-2020.xlsx")
df=as.data.frame(LungExtracellularPanel)
df$collection <- str_split_fixed(df$Sample," ",2)[,1]
rdf <- melt(df,id.vars=c("Sample","collection"))
swr = function(string,nwrap=25) {
paste(strwrap(string,width=nwrap),collapse="\n")
}
swr = Vectorize(swr)
rdf$variable2=swr(rdf$variable)
stat.test <- rdf %>%
add_y_position(y="value",fun="max",scales="free",step.increase = 0.1)
group_by(variable2) %>%
t_test(value~collection)
stat.test
#stuff <- combn(unique(rdf$collection),2)
# a <- NULL
# my_comparisons = list()
# j = 0
# for(i in 1:dim(stuff)[2]){
# a <- as.character(stuff[,i])
# g1 = rdf[which(rdf$collection == a[1]),]$value
# g2 = rdf[which(rdf$collection == a[2]),]$value
# if(mean(g1,na.rm=T) != 0 || mean(g2,na.rm=T) != 0){
# j = j + 1
# my_comparisons[[j]] <- c(a[1],a[2])
# }
# }
p <- ggplot(data = rdf,mapping = aes(x = variable2,y = value,fill =collection))
p <- p + geom_violin(alpha=0.3,scale="width",position = position_dodge(width=1),size=0.5,facet.by="variable2",scales="free")
p <- p + geom_boxplot(alpha=0.7,outlier.shape=NA,position = position_dodge(1),scales="free")
p <- p + geom_point(position = position_jitterdodge(jitter.width=0.1,jitter.height=0,dodge.width = 1))
#p <- p + geom_jitter(position=position_jitter(width=0.1,height=0))
p <- p + theme_bw()
p <- p + theme(axis.text.x = element_blank())
p <- p + scale_fill_viridis_d(option = "D")
p <- p + facet_wrap(~variable2,ncol=6)
p <- p + scale_y_continuous(expand = expansion(mult = c(0.1,0.14)))
p <- p + stat_compare_means(method = "anova",size=3,hjust=0.7,label.y.npc = 'top',family="Arial",fontface="bold")
#p <- p + stat_pvalue_manual(stat.test,label="p")
#p <- p + stat_compare_means(comparisons = my_comparisons,family= "Arial",face= "bold")
p <- p + labs(title="Spleen Extracellular Panel Analysis")
p <- p + ylab("% Live Cells") + xlab(" ")
p <- p + theme(text=element_text(family="Arial",face = "bold"))
p
这是情节的样子:
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。