我对p值的概念感到困惑。通常,如果p值大于通常为0.05的alpha值,则我们无法拒绝原假设,并且如果p值小于alpha,我们将拒绝原假设。据我了解,如果p值大于alpha,则两组之间的差异仅仅是由于采样误差或偶然造成的,到目前为止一切正常。但是,如果p值小于alpha,则结果在统计上是有意义的,我假设它在统计上是不重要的(因为在p值小于alpha的情况下,我们将拒绝原假设)。
基本上,如果结果具有统计意义,则拒绝原假设。但是,如果假设在统计意义上是重要的,该如何拒绝它呢?从“具有统计意义的意义”一词,我理解结果是好的。
因此,让我们从 ?t.test()
我们通过以下方法对数据进行了两个样本的t检验:
t.test(1:10, y = c(7:20))
Run Code Online (Sandbox Code Playgroud)
现在我只对保存感兴趣。p-value
当我输入以下代码时,$p.value也将保存。
t.test(1:10, y = c(7:20))[3]
Run Code Online (Sandbox Code Playgroud)
我只希望p-value保存的(带有$p.value)作为数字/整数/双精度数。很抱歉问这样一个简单的问题
我使用 R 计算了两个时间序列的互相关。ccf()我知道如何得出置信限:
ccf1 <- ccf(x=x,y=y,lag.max=5,na.action=na.pass, plot=F)
upperCI <- qnorm((1+0.95)/2)/sqrt(ccf1$n.used)
lowerCI <- -qnorm((1+0.95)/2)/sqrt(ccf1$n.used)
Run Code Online (Sandbox Code Playgroud)
但我真正需要的是最大相关性的 p 值。
ind.max <- which(abs(ccf1$acf[1:11])==max(abs(ccf1$acf[1:11])))
max.cor <- ccf1$acf[ind.max]
lag.opt <- ccf1$lag[ind.max]
Run Code Online (Sandbox Code Playgroud)
如何计算这个 p 值?我到处搜索,但在任何地方都找不到好的答案。
我试图通过显着的P值来对变量进行子集化,并尝试使用以下代码,但它只选择所有变量而不是按条件选择.任何人都可以帮我纠正这个问题吗?
myvars <- names(summary(backward_lm)$coefficients[,4] < 0.05)
happiness_reduced <- happiness_nomis[myvars]
Run Code Online (Sandbox Code Playgroud)
谢谢!
以下代码的java等价物是什么?
import scipy
from scipy.stats import zscore
zlist = [9967,11281,10752,10576,2366,11882,11798,]
z = zscore(zlist)
for e in z:
print e,scipy.stats.norm.sf(abs(e))
Run Code Online (Sandbox Code Playgroud) 我计算了多个变量均值差异的 Anova F 检验 p 值。现在我想添加“星星”来指示 p 值的显着性水平。我希望 * 表示 10% 水平的显着性,** 表示 5% 水平的显着性,*** 表示 1% 水平的显着性。
我的数据如下所示:
structure(list(Variables = c("A", "B", "C", "D", "E"),
`Anova F-Test p-Value` = c(0.05, 5e-04, 0.5, 0.05, 0.01)),
class = "data.frame", row.names = c(NA, -5L))
Run Code Online (Sandbox Code Playgroud)
有人可以帮我处理这里的代码吗?
我想p.adjust在 R 中应用该函数,其中nis < p 值的数量。独立测试的实际数量低于 p 值的数量,因为它来自具有连锁去平衡 Desequilibrium 的基因组数据(独立测试的有效数量,Meff)。
但是,该p.adjust函数不允许这样做:number of comparisons, must be at least length(p)。
有人知道如何更改函数或其他通用函数中的默认值来完成类似的工作吗?谢谢你!
遵循的步骤:
1 - 3242 个测试标记 = 3242 个 p 值
2 - 推断的 Meff 为:1096(http://simplem.sourceforge.net/ procedure)
现在我需要根据 Meff 估计修正后的 treshould 或修正后的 p 值。
我不确定哪种多重测试校正策略更适合或如何将其应用到我的数据中。
我是一名生物化学家,作为非专业人士使用 R,现在遇到了问题。我有一个数据框,我想比较我的不同治疗组和阳性对照与中等对照。我想要使用的统计检验是方差分析,然后是 Dunnetts 检验。我为此使用了multcomp- 和- 包,我用这段代码到达了那里DescTools
Particle <- factor(c("Medium", "PosCon", "Trt1", "Trt2", "Trt3", "Medium", "PosCon", "Trt1", "Trt2", "Trt3", "Medium", "PosCon", "Trt1", "Trt2", "Trt3"))\nValues <- c(1.0, 263.0, 3.1, 1.2, 0.9, 1.0, 244.0, 2.4, 1.6, 1.1, 1.0, 255.0, 3.8, 2.0, 0.8)\n\nmyDataframe <- data.frame(Particle, Values)\n\nstr(myDataframe)\n\na1 <- aov(Values ~ Particle, data= myDataframe) \nsummary(a1)\n\n#Output\n# Df Sum Sq Mean Sq F value Pr(>F) \n#Particle 4 152832 38208 2084 1.48e-14 ***\n#Residuals 10 183 18 \n#---\n#Signif. codes: 0 \xe2\x80\x98***\xe2\x80\x99 0.001 \xe2\x80\x98**\xe2\x80\x99 0.01 \xe2\x80\x98*\xe2\x80\x99 0.05 …Run Code Online (Sandbox Code Playgroud) 我有两个基因列表,我计算它们之间的交集。
我需要计算假设的 p 值 - 这些列表的交集是偶然发生的。
我尝试使用 Fisher 的精确测试(scipy 函数)来实现这一点。
请注意,我需要一个单边 p 值。
我的代码:
def main(gene_path1, gene_path2, pop_size):
genes1 = pd.read_csv(gene_path1, sep='\n', header=None)
genes2 = pd.read_csv(gene_path2, sep='\n', header=None)
intersection = pd.merge(genes1, genes2, how='inner').drop_duplicates([0])
len_genes1 = genes1[0].count()
len_genes2 = genes2[0].count()
len_intersection = intersection[0].count()
oddsratio, pvalue = stats.fisher_exact([[len_genes1 - len_intersection, len_genes1], [len_genes2 - len_intersection, len_genes2]], alternative='less')
print(f'Genes1 len: {len_genes1}, Genes2 len: {len_genes2}, Intersection: {len_intersection}, pvalue: {pvalue}')
Run Code Online (Sandbox Code Playgroud)
为了简单起见,我使用了数字列表(而不是基因)。
由于它太长,我不会复制整个文件,而是想象两个文件,其中包含大量由换行符分隔的随机数。
例如:
1
2
3
246
51451
...
Run Code Online (Sandbox Code Playgroud)
问题是 - 我如何确定我正确指定了渔夫精确函数的参数?根据我试图检查的假设是否正确?
我怀疑我做错了,但我不确定为什么。可能是错误的提示 - …
我正在使用 ggpubr 包中的 ggscatter 绘制两个连续变量之间的相关图。我使用的是肯德尔等级系数,p 值自动添加到图表中。我想使用scale_y_log10(),因为其中一个测量值存在很大的差异。然而,在代码中添加scale_y_log10()会影响p值。
样本数据:
sampledata <- structure(list(ID = c(1, 2, 3, 4, 5), Measure1 = c(10, 10, 50, 0, 100), Measure2 = c(5, 3, 40, 30, 20), timepoint = c(1, 1,1, 1, 1), time = structure(c(18628, 19205, 19236, 19205, 19205), class = "Date"), event = c(1, 1, NA, NA, NA), eventdate = structure(c(18779,19024, NA, NA, NA), class = "Date")), row.names = c(NA, -5L), class = "data.frame")
Run Code Online (Sandbox Code Playgroud)
没有scale_y_log10()的图
ggscatter(data = sampledata, x = "Measure2", y = "Measure1",
add …Run Code Online (Sandbox Code Playgroud) p-value ×10
r ×7
statistics ×3
bioconductor ×1
extraction ×1
genome ×1
java ×1
python ×1
scatter-plot ×1
scipy ×1
significance ×1
subset ×1
time-series ×1