[][src]Crate blackjack

BlackJack strives to be a full featured crate for general data processing.

Long term goal is to create a lightweight Pandas equivalent by and for the Rust community, but with slight differences in focus...

The project strives for a few key principles. When any implementation decisions are to be made, they are made with these principles in mind, and in this order:

  1. Memory efficiency
    • Minimize memory use at every opportunity.
  2. Usability
    • Strive for ergonomics; often done by modeling the Pandas API where possible.
  3. Speedy
    • It comes naturally most times with Rust. :)

Eventually, a Python wrapper: Lumber-Jack associated with this crate, but that time will come.

Example use:

use blackjack::prelude::*;

// We have a dataframe, of course...
let mut df = DataFrame::new();

// Make some series, of different types
let series_i32: Series<i32> = Series::arange(0, 5);
let mut series_f64: Series<f64> = Series::from_vec(vec![1.0, 2.0, 3.0, 4.0, 5.0]);

// You can set a series name!
series_f64.set_name("my-series");

// Or not...
assert_eq!(series_i32.name(), None);

// And add them to the dataframe
df.add_column(series_f64).unwrap();
df.add_column(series_i32).unwrap();

// And then get a reference to a Series
let series_f64_ref: &Series<f64> = df.get_column("my-series").unwrap();

// and a lot more...

Modules

dataframe

DataFrame object and associated functionality

enums

Enums to be used throughout the crate.

error

The common Error(s) and associated implementations used in within the crate

macros

Mostly internal level macros for implementing ops per series type

prelude

Default and recommended imports for functionality of crate.

row

Representation of a row in a DataFrame and related structs

series

Series represents a single column within a DataFrame

traits

Traits to be used throughout the crate

Macros

impl_series_by_series_op

Implement series by series operations ie. series1 + series2

impl_series_by_series_op_inplace

Implement various inplace numeric operations for a Series ie. series += 1

impl_series_into_iter

Implement IntoIter for a dtype (ie. f64) for Series