Struct blackjack::traits::SeriesGroupBy
source · pub struct SeriesGroupBy<T: BlackJackData> { /* private fields */ }
Expand description
Series::groupby
result.
Contains the split series by key
Implementations§
source§impl<T> SeriesGroupBy<T>where
T: BlackJackData,
impl<T> SeriesGroupBy<T>where
T: BlackJackData,
sourcepub fn new(groups: Vec<Series<T>>) -> Self
pub fn new(groups: Vec<Series<T>>) -> Self
Create a new SeriesGroupBy
from a Vec<Series>
sourcepub fn apply<F>(self, agg_func: F) -> Series<T>where
F: Fn(Series<T>) -> T + Sync + Send,
T: Send,
pub fn apply<F>(self, agg_func: F) -> Series<T>where
F: Fn(Series<T>) -> T + Sync + Send,
T: Send,
Apply an aggregation function to each Series
in SeriesGroupBy
yielding a grouped Series
The passed function should return type T
when given
a Series
where BlackJackData
has been
implemented for T
Example
use blackjack::prelude::*;
let series = Series::from_vec(vec![9, 9, 3, 1, 1, 9]);
let keys = Series::from_vec(vec![4, 5, 6, 4, 5, 6]);
let grouped: SeriesGroupBy<i32> = series.groupby(keys);
let series = grouped.apply(|s: Series<i32>| s.min().unwrap());
assert_eq!(series.max(), Ok(3)); // by key, 3 is the max.
Trait Implementations§
source§impl<T: Clone + BlackJackData> Clone for SeriesGroupBy<T>
impl<T: Clone + BlackJackData> Clone for SeriesGroupBy<T>
source§fn clone(&self) -> SeriesGroupBy<T>
fn clone(&self) -> SeriesGroupBy<T>
Returns a copy of the value. Read more
1.0.0 · source§fn clone_from(&mut self, source: &Self)
fn clone_from(&mut self, source: &Self)
Performs copy-assignment from
source
. Read more