8个版本 (4个破坏性更新)

0.7.0 2023年10月16日
0.6.1 2022年12月3日
0.6.0 2022年6月15日
0.5.1 2022年3月1日
0.3.0 2021年1月20日

机器学习 分类中排名 319

Download history 127/week @ 2024-04-18 123/week @ 2024-04-25 141/week @ 2024-05-02 163/week @ 2024-05-09 156/week @ 2024-05-16 122/week @ 2024-05-23 117/week @ 2024-05-30 101/week @ 2024-06-06 114/week @ 2024-06-13 138/week @ 2024-06-20 89/week @ 2024-06-27 62/week @ 2024-07-04 102/week @ 2024-07-11 130/week @ 2024-07-18 210/week @ 2024-07-25 150/week @ 2024-08-01

每月下载量 616
13 crate 使用

MIT/Apache 协议

255KB
4K SLoC

数据集

linfa-datasets 提供了一组常用数据集,可用于测试和示例。

总体情况

linfa-datasets 是 Linfa 生态系统中的一个 crate,Linfa 是一个在纯 Rust 中实现经典机器学习工具包的努力,类似于 Python 的 scikit-learn

当前状态

目前提供以下数据集

名称 描述 样本数,特征数,目标数 目标 参考
iris Iris 数据集提供了属于三个不同类别的花朵属性样本,其中只有两个是线性可分的。它由 Ronald Fisher 在 1936 年作为线性判别分析的示例引入。 150, 4, 1 多类分类 此处
winequality Winequality 数据集测量葡萄酒的不同属性,如酸度,并给出从 3 到 8 的质量评分。它在葡萄牙北部收集。 441, 10, 1 多类分类 此处
diabetes Diabetes 数据集提供了人体生物指标样本,如 BMI、年龄、血液指标,并尝试预测糖尿病的进展。 1599, 11, 1 回归 此处
linnerud Linnerud 数据集包含 20 名中年男性健身俱乐部的样本。他们的身体能力和生物指标相关。 20, 3, 3 回归 此处

该软件包的目的是简化数据集加载过程。加载的数据集以命名特征的形式返回为 linfa::Dataset 结构。该软件包还包括从CSV文件读取数组时的辅助函数。

此外,该软件包还提供了用于随机生成测试数据集的实用函数。

使用数据集

要在项目中使用提供的其中一个数据集,请将 linfa-datasets 软件包添加到您的 Cargo.toml,并启用相应的功能

linfa-datasets = { version = "0.x", features = ["winequality"] }

然后您可以在工作代码中使用该数据集

let (train, valid) = linfa_datasets::winequality()
    .split_with_ratio(0.8);

从文件读取

linfa-datasets 还能够从CSV文件中读取二维数组

use std::fs::File;
use std::io::Read;

let file = File::open("data.csv.gz").unwrap();
// Read the array from a GZipped CSV file with a header and separated by commas
let array = linfa_datasets::array_from_gz_csv(file, true, b',').unwrap();

数据生成

要随机生成数据集,请在 linfa-datasets 上启用 generate 功能。API位于软件包的 generate 模块中。

依赖项

~5MB
~88K SLoC