两种明显不同分布的统计检验选择(R)

两种明显不同分布的统计检验选择(R),r,statistics,statistical-test,R,Statistics,Statistical Test,我有下面的数据列表,每个都有10个样本。 这些值表示特定分子的结合强度 我想展示的是,从统计学上来说,“x”与 “y”、“z”和“w”。如果你看X,它是这样的 大于零的值(2.8、1.00、5.4等)比其他值多 我试过t检验,但它们都显示出不显著的差异 具有高P值 什么是合适的测试 下面是我的代码: #!/usr/bin/Rscript x <-c(2.852672123,0.076840264,1.009542943,0.430716968,5.4016,0.084281843,0.

我有下面的数据列表,每个都有10个样本。 这些值表示特定分子的结合强度

我想展示的是,从统计学上来说,“x”与 “y”、“z”和“w”。如果你看X,它是这样的 大于零的值(2.8、1.00、5.4等)比其他值多

我试过t检验,但它们都显示出不显著的差异 具有高P值

什么是合适的测试

下面是我的代码:

#!/usr/bin/Rscript
x   <-c(2.852672123,0.076840264,1.009542943,0.430716968,5.4016,0.084281843,0.065654548,0.971907344,3.325405405,0.606504718)
y   <- c(0.122615039,0.844203734,0.002128992,0.628740077,0.87752229,0.888600425,0.728667099,0.000375047,0.911153571,0.553786408);
z   <- c(0.766445916,0.726801899,0.389718652,0.978733927,0.405585807,0.408554832,0.799010791,0.737676439,0.433279599,0.947906524)
w   <- c(0.000124984,1.486637663,0.979713013,0.917105894,0.660855127,0.338574774,0.211689885,0.434050179,0.955522972,0.014195184)

t.test(x,y)
t.test(x,z)
#/usr/bin/Rscript

x您没有指定您希望样本以何种方式不同。我们通常假设您的意思是,样本之间的平均值不同。在这种情况下,t检验是合适的。虽然
x
有一些较高的值,但也有一些较低的值,将平均值拉进来。看起来你认为的显著差异(视觉上)实际上是一个更大的差异


如果你的问题是关于方差的,那么你需要进行F检验。

在你的问题中,你提到的分布是不同的b/c,其中一些分布的值大于0。根据“大于0的值的数量”定义分布,然后使用二项式分布(将值转换为1和0后)。然后可以使用的函数是
prop.test()

这类数据的经典测试是方差分析。方差分析告诉您所有四个类别的平均值是否可能相同(拒绝无效假设失败),或者至少一个平均值可能与其他平均值不同(拒绝无效假设)

如果方差分析显著,您通常需要执行Tukey HSD事后检验,以确定哪一类与其他类别不同。Tukey HSD生成的p值已经针对多次比较进行了调整

library(ggplot2)
library(reshape2)

x <- c(2.852672123,0.076840264,1.009542943,0.430716968,5.4016,0.084281843,
       0.065654548,0.971907344,3.325405405,0.606504718)
y <- c(0.122615039,0.844203734,0.002128992,0.628740077,0.87752229,
       0.888600425,0.728667099,0.000375047,0.911153571,0.553786408);
z <- c(0.766445916,0.726801899,0.389718652,0.978733927,0.405585807,
       0.408554832,0.799010791,0.737676439,0.433279599,0.947906524)
w <- c(0.000124984,1.486637663,0.979713013,0.917105894,0.660855127,
       0.338574774,0.211689885,0.434050179,0.955522972,0.014195184)

dat = data.frame(x, y, z, w)
mdat = melt(dat)

anova_results = aov(value ~ variable, data=mdat)
summary(anova_results)
#             Df Sum Sq Mean Sq F value Pr(>F)
# variable     3   5.83  1.9431   2.134  0.113
# Residuals   36  32.78  0.9105               

仅10个样品,您期望得到什么?即便如此,
x
只有少数几个较大的值,其余的似乎与其他样本中的值相当。你不能只是去寻找一个能给你“正确”答案的统计测试。也就是说,我想你可以试试引导。@joran:谢谢你的输入。你是说只需10个样本就可以启动?怎样才能做到呢?请提供建议。参考:参考:
TukeyHSD(anova_results)
#   Tukey multiple comparisons of means
#     95% family-wise confidence level
# 
# Fit: aov(formula = value ~ variable, data = mdat)
# 
# $variable
#            diff       lwr       upr     p adj
# y-x -0.92673335 -2.076048 0.2225815 0.1506271
# z-x -0.82314118 -1.972456 0.3261737 0.2342515
# w-x -0.88266565 -2.031981 0.2666492 0.1828672
# z-y  0.10359217 -1.045723 1.2529071 0.9948795
# w-y  0.04406770 -1.105247 1.1933826 0.9995981
# w-z -0.05952447 -1.208839 1.0897904 0.9990129

plot_1 = ggplot(mdat, aes(x=variable, y=value, colour=variable)) + 
         geom_boxplot() +
         geom_point(size=5, shape=1)
ggsave("plot_1.png", plot_1, height=3.5, width=7, units="in")