R 使用ggplot2绘制箱线图,并进行两个样本t检验

R 使用ggplot2绘制箱线图,并进行两个样本t检验,r,plot,t-test,R,Plot,T Test,这是我的数据。你可以打开这个链接 我想画一个方框图,其中男性和女性在x轴上,他们的频率在y轴上。 然后,我想进行两个样本t检验。有没有办法区分干扰栖息地和未干扰栖息地 这就是我尝试过的 # install and load ggplot2 trial1$Sex <- factor(trial1$Sex,labels = c("Female", "Male")) P1 <- qplot(trial1$Sex, xlab="Host Sex", ylab="Host caught", m

这是我的数据。你可以打开这个链接

我想画一个方框图,其中男性和女性在x轴上,他们的频率在y轴上。 然后,我想进行两个样本t检验。有没有办法区分干扰栖息地和未干扰栖息地

这就是我尝试过的

# install and load ggplot2
trial1$Sex <- factor(trial1$Sex,labels = c("Female", "Male"))
P1 <- qplot(trial1$Sex, xlab="Host Sex", ylab="Host caught", main="HOSTS CAUGHT VS SEX")
trial1$Habitat <- factor(trial1$Age,labels = c("Disturb", "Undisturb"))
P2 <- qplot(trial1$Habitat, xlab="Habitat", ylab="Host caught", main="HOSTS CAUGHT VS HABITAT")

# calculatefrequency
library(plyr) #can also count using this package
#calculate frequency and make data frame
library(dplyr)#or this package
f1 <- factor(c(Sex))
T1 <- table(f1) #create table of frequency

f2 <- factor(c(Habitat))
T2 <- table(f2)

a1 <- ggplot(data = trial1, aes(x = Sex, y = Freq, colour = Sex)) + 
      geom_boxplot() + xlab("Sex") + ylab("Total ectoparasites") + 
      ggtitle("Sex vs Total ectoparasites")
#安装并加载ggplot2

trial1$Sex对于这种类型的数据,您应该做的第一件事是将其从宽格式改为长格式。这意味着创建两列,一列用于P1、P2等,另一列用于相应的值

library(dplyr)
library(tidyr)
library(ggplot2)
trial1 %>% 
  gather(variable, value, -Habitat, -Sex, -Birds)
在这种情况下,我不建议使用箱线图;考虑到数据中有大量零值,它不会提供信息。我是否可以建议使用
geom_jitter
绘制数量与性别的关系,并使用切面进一步细分栖息地:

trial1 %>% 
  gather(variable, value, -Habitat, -Sex, -Birds) %>% 
  ggplot(aes(Sex, value)) + 
  geom_jitter(width = 0.2, alpha = 0.3) + 
  facet_grid(Habitat ~ .) +
  labs(y = "total ectoparasites", title = "Total ectoparasites by Sex and Habitat") +
  theme_light()

有很多方法可以为后续的统计测试总结数据。例如,要获得按性别和栖息地划分的2 x 2计数表(实际上是2 x 3,因为性别是第一列):

trial1 %>% 
  gather(variable, value, -Habitat, -Sex, -Birds) %>% 
  group_by(Sex, Habitat) %>% 
  summarise(count = sum(value)) %>% 
  spread(Habitat, count)

     Sex Disturb Undisturb
*  <chr>   <int>     <int>
1 Female       6        23
2   Male      69       117
trial1%>%
聚集(变量,值,-栖息地,-性别,-鸟类)%>%
按性别、栖息地划分的组别%>%
汇总(计数=总和(值))%>%
传播(栖息地、数量)
性骚扰
*          
1女6 23
2男69 117

不确定箱线图是否是这里的最佳选择。由于有许多零值,结果将是一个非常窄的接近零值的框,上面绘制了一些异常值。非常感谢您的回答和解释。这对我很有帮助!很乐意提供帮助。我建议花一些时间与
dplyr
一起找出您可能使用的各种方法对数据集进行切片和骰子分割,直到它符合您想要使用的任何测试的形式。