7个版本
0.1.6 | 2024年6月28日 |
---|---|
0.1.5 | 2024年2月6日 |
0.1.4 | 2022年8月23日 |
#120 in 科学
每月129次下载
用于 3 crate
18KB
326 行
adjustp
摘要
这是一个用于进行多重假设检验的p值调整的crate,灵感来自R函数 p.adjust
。
目前只有三种方法可用:Bonferroni、Benjamini-Hochberg和Benjamini-Yekutieli。
该crate为这些多重假设修正提供了一个单一接口,并且不要求在计算之前对p值进行预排序。
使用方法
测试的主要接口是通过 adjust
函数,它接受一个 f64
的切片和一个 Procedure
。如果你使用 ndarray
,你可以使用 .as_slice()
函数轻松地使用它。
基本使用
以下是一个 Bonferroni
修正的示例。
use adjustp::{adjust, Procedure};
let pvalues = vec![0.1, 0.2, 0.3, 0.4, 0.1];
let qvalues = adjust(&pvalues, Procedure::Bonferroni);
assert_eq!(qvalues, vec![0.5, 1.0, 1.0, 1.0, 0.5]);
以下是一个 BenjaminiHochberg
调整的示例。
use adjustp::{adjust, Procedure};
let pvalues = vec![0.1, 0.2, 0.3, 0.4, 0.1];
let qvalues = adjust(&pvalues, Procedure::BenjaminiHochberg);
assert_eq!(qvalues, vec![0.25, 0.33333333333333337, 0.375, 0.4, 0.25]);
以下是一个 BenjaminiYekutieli
调整的示例。
use adjustp::{adjust, Procedure};
let pvalues = vec![0.1, 0.2, 0.3, 0.4, 0.1];
let qvalues = adjust(&pvalues, Procedure::BenjaminiYekutieli);
assert_eq!(qvalues, vec![0.5708333333333333, 0.7611111111111111, 0.8562500, 0.91333333333333333, 0.5708333333333333]);
依赖项
~155KB