6 个版本 (稳定版)

1.0.3 2023年12月27日
1.0.2 2023年10月19日
1.0.1 2023年3月11日
1.0.0 2023年2月20日
0.1.1 2021年6月6日

算法 中排名 334

Download history 111/week @ 2024-04-21 112/week @ 2024-04-28 83/week @ 2024-05-05 211/week @ 2024-05-12 252/week @ 2024-05-19 219/week @ 2024-05-26 182/week @ 2024-06-02 249/week @ 2024-06-09 317/week @ 2024-06-16 279/week @ 2024-06-23 287/week @ 2024-06-30 299/week @ 2024-07-07 178/week @ 2024-07-14 259/week @ 2024-07-21 327/week @ 2024-07-28 230/week @ 2024-08-04

每月下载量 1,003
7 包(4 个直接使用)中使用

MIT/Apache

17KB
177

interp

Test status Code coverage Crate version Rust version Downloads

线性插值功能的 Matlab interp1 函数的 Rust 重实现。

API 文档可在 docs.rs 上找到。

使用方法

interp 添加到您的 Cargo.toml 文件中

[dependencies]
interp = "1.0"

或者,如果您需要 interp_array 功能(仅在 Rust 1.55.0 或更高版本上受支持)

[dependencies]
interp = { version = "1.0", features = ["interp_array"] }

示例

use interp::interp;

let x = vec![0.0, 0.2, 0.5, 0.8, 1.0];
let y = vec![0.0, 1.0, 3.0, 3.5, 4.0];

// Interpolate at a single point
assert_eq!(interp(&x, &y, 0.35), 2.0);

// Interpolate a vec
let xp = vec![0.1, 0.65, 0.9];
assert_eq!(interp_slice(&x, &y, &xp), vec![0.5, 3.25, 3.75]);

// Interpolate an array (requires the interp_array feature and Rust 1.55.0+)
let xp = [0.1, 0.65, 0.9];
assert_eq!(interp_array(&x, &y, &xp), [0.5, 3.25, 3.75]);

完整的 API 文档可在 docs.rs 上找到。

贡献

欢迎提交拉取请求。对于重大更改,请首先创建一个问题来讨论您希望进行的更改。

请确保适当更新测试。

您可以通过运行以下命令安装 pre-commit 插件(它检查格式等):

pip install -U pre-commit
pre-commit install

许可证

以下任一许可证下发布:

任选其一。

除非您明确声明,否则任何有意提交以包含在此包中的贡献,根据 Apache-2.0 许可证的定义,应按上述方式双重许可,不附加任何额外条款或条件。

依赖项

~600KB
~11K SLoC