9 个版本
使用旧的 Rust 2015
0.2.2 | 2024 年 7 月 8 日 |
---|---|
0.2.1 | 2022 年 2 月 8 日 |
0.2.0 | 2021 年 5 月 17 日 |
0.1.5 | 2020 年 12 月 23 日 |
0.1.1 | 2018 年 8 月 29 日 |
#269 在 算法 中
在 kders 中使用
18KB
327 行
kendalls
用法
将此内容添加到您的 Cargo.toml
[dependencies]
kendalls = "0.2.2"
并将其添加到您的 crate 根目录
extern crate kendalls;
示例
fn main() -> Result<(), kendalls::Error> {
let (tau_b, significance) = kendalls::tau_b(&[1, 2, 3], &[3, 4, 5])?;
assert_eq!(tau_b, 1.0);
assert_eq!(significance, 1.5666989036012806);
Ok(())
}
lib.rs
:
Kendall's tau rank correlation. 目前这基本上是从 Apache Commons Math 库复制粘贴,并添加了一些来自 scipy 和 R cor.test 函数的修改。
示例用法
let (tau_b, significance) = kendalls::tau_b(&[1, 2, 3], &[3, 4, 5]).unwrap();
assert_eq!(tau_b, 1.0);
assert_eq!(significance, 1.5666989036012806);
如果您想计算相关性,比如对 f64
类型,那么您必须提供一个自定义比较函数或为您的自定义浮点数字类型声明 Ord
特性(参见 float crate)。
use std::cmp::Ordering;
let (tau_b, _significance) = kendalls::tau_b_with_comparator(
&[1.0, 2.0],
&[3.0, 4.0],
|a: &f64, b: &f64| a.partial_cmp(&b).unwrap_or(Ordering::Greater),
).unwrap();
assert_eq!(tau_b, 1.0);
如果向函数传递空数组或 x
和 y
数组的维度不相等,函数将返回错误。