Я пытаюсь одновременно использовать facet_wrap и stat_compare_means, но у меня проблема. Две стороны данных не имеют одинакового количества точек. Следовательно, stat_compare_means не работает ... Посмотрите, например, на изображение:
в Type1 B есть три точки, тогда как в Type2 B только одна точка. Это несоответствие приводит к тому, что почти все t-тест не проходит и не отображается на графике. Что мне нужно, так это t-тест для групп, у которых есть совпадающее количество точек (в данном случае все t-тест на Type1 и A против C в Type2). Используемый сюжет следующий:
library(RColorBrewer)
library(ggpubr)
library(BBmisc)
adf=read.csv("test1.txt", sep=" ")
myColors <- brewer.pal(length(unique(adf$ID)) ,"Set1")
names(myColors) <- unique(adf$ID)
colScale <- scale_colour_manual(name = "ID",values = myColors)
my_comparison=as.data.frame(combn(unique(adf$sampletype) ,2))
my_comparison=convertColsToList(my_comparison)
ggplot(adf, aes(x=sampletype, y=value, fill=sampletype ))+
geom_point(aes(group=ID, colour=ID))+
geom_line(aes(group=ID, colour=ID))+
facet_wrap(~response, scale="free")+
colScale+
ggtitle("Entropy")+
theme(text = element_text(size=20))+
stat_compare_means(comparisons = my_comparison, method = "t.test", paired = TRUE)
Данные (сохранены как test1.txt):
sampletype value ID response
A 8.192 gr_6 Type2
B 13.99 gr_6 Type2
C 9.186 gr_6 Type2
A 5.616 gr_5 Type1
B 15.55 gr_5 Type1
C 7.126 gr_5 Type1
A 5.484 gr_4 Type1
B 12.54 gr_4 Type1
C 4.492 gr_4 Type1
A 9.949 gr_3 Type2
C 6.631 gr_3 Type2
A 2.533 gr_7 Type2
C 12.25 gr_7 Type2
A 2.196 gr_2 Type2
C 6.447 gr_2 Type2
A 11.20 gr_1 Type1
B 16.63 gr_1 Type1
C 6.637 gr_1 Type1
Есть ли обходной путь?
ggpubr
, а не добавлять его к графику, построенному с помощью ggplot? См. Здесь stackoverflow.com/questions/64051045/ - person NColl   schedule 28.09.2020facet.by=
к первому вызову ggpubr или добавив его отдельно, как описано здесь rpkgs.datanovia.com/ggpubr/reference/facet.html - person NColl   schedule 28.09.2020mutate()
вводомdata
. x _tidyr_melt_dataframe не разрешен из текущего пространства имен (tidyr) ℹ Входdata
-map(.data$data, .f, ...)
. Запуститеrlang::last_error()
, чтобы узнать, где произошла ошибка. - person Fabrizio   schedule 28.09.2020