Agnes is a data wrangling crate for Rust. It is intended to provide utilities for data loading, aggregation, annotation, and visualization.
It is still very much a work in progress.
Add this to your Cargo.toml
:
toml
[dependencies]
agnes = "0.1"
and this to your crate root:
rust
extern crate agnes;
A quick example:
```rust extern crate agnes;
use agnes::source::{CsvReader, CsvSourceBuilder, FileSource}; use agnes::field::{FieldIdent, FieldType}; use agnes::view::DataView;
fn main() { let datafilepath = Path::new(file!()).parent().unwrap().join("tests/data/sample1.csv"); let file = FileSource::new(datafilepath); let mut csvrdr = CsvReader::new( CsvSourceBuilder::new(file) .fields(fields![ "state" => FieldType::Text, "val1" => FieldType::Unsigned, "val2" => FieldType::Float ]) .build() ).unwrap(); let dv: DataView = csvrdr.read().unwrap().into(); println!("{}", dv); } ```