Rustの統計分布の関数(statrs版)を使う~Cargoの利用法を添えて~
Rustで、統計分布の関数を使ってみるテスト。この際、ライブラリとしてはstatrsを使う。Cargoを使ってビルドすることになる。
環境はWindows 10。
自分的プロジェクト名はtest02。
ソースなどはこちら (Github)
Cargoでプロジェクトの作成
ターミナルで以下を実行。
cargo new test02
これで、プロジェクトのディレクトリとして./test02がつくられる。その中のsrcディレクトリにソースファイルを置く。
Rustソース
Rustのソースファイルは以下のような感じ。
main.rs
use statrs::distribution::Normal; use statrs::distribution::ContinuousCDF; fn main() { println!("Calculating InverseCDF(0.975) for N(0,1)"); let n = Normal::new(0.0, 1.0).unwrap(); let z = n.inverse_cdf( 0.975); println!("z = {z}"); }
Cargo.tomlファイル
Cargo.tomlにビルドに必要な情報を書く。デフォルトでは次のような内容だった。
Cargo.toml (default)
[package] name = "test02" version = "0.1.0" edition = "2021" # See more keys and their definitions at https://doc.rust-lang.org/cargo/reference/manifest.html [dependencies]
この[dependencies]
以下に、必要なライブラリ(クレート?)に関する記述を追加する。今回はstatrsを使うので以下のように書く。
Cargo.toml
[package] name = "test02" version = "0.1.0" edition = "2021" # See more keys and their definitions at https://doc.rust-lang.org/cargo/reference/manifest.html [dependencies] statrs = "0.16"
Cargoでビルド
ターミナル上で、プロジェクトのディレクトリ内で以下を実行すればデバッグビルドがなされる。
cargo build
できた実行ファイルは./target/debug/にある。
リリースビルドは
cargo build --release
で可能。できた実行ファイルは./target/release/にある。
実行結果
今回の実行結果は以下のようになった。
Calculating InverseCDF(0.975) for N(0,1) z = 1.9599639845400538
めでたし、めでたし。