pub struct InMemDataset<I> { /* private fields */ }Available on crate features
dataset and std only.Expand description
Dataset where all items are stored in ram.
Implementations§
Source§impl<I> InMemDataset<I>
impl<I> InMemDataset<I>
Sourcepub fn new(items: Vec<I>) -> InMemDataset<I>
pub fn new(items: Vec<I>) -> InMemDataset<I>
Creates a new in memory dataset from the given items.
Source§impl<I> InMemDataset<I>where
I: Clone + DeserializeOwned,
impl<I> InMemDataset<I>where
I: Clone + DeserializeOwned,
Sourcepub fn from_dataset<E>(dataset: &impl Dataset<I, E>) -> InMemDataset<I>
pub fn from_dataset<E>(dataset: &impl Dataset<I, E>) -> InMemDataset<I>
Create from a dataset. All items are loaded in memory.
Sourcepub fn from_json_rows<P>(path: P) -> Result<InMemDataset<I>, Error>
pub fn from_json_rows<P>(path: P) -> Result<InMemDataset<I>, Error>
Create from a json rows file (one json per line).
Sourcepub fn from_csv<P>(
path: P,
builder: &ReaderBuilder,
) -> Result<InMemDataset<I>, Error>
pub fn from_csv<P>( path: P, builder: &ReaderBuilder, ) -> Result<InMemDataset<I>, Error>
Create from a csv file.
The provided csv::ReaderBuilder can be configured to fit your csv format.
The supported field types are: String, integer, float, and bool.
See:
Trait Implementations§
Auto Trait Implementations§
impl<I> Freeze for InMemDataset<I>
impl<I> RefUnwindSafe for InMemDataset<I>where
Vec<I>: RefUnwindSafe,
impl<I> Send for InMemDataset<I>
impl<I> Sync for InMemDataset<I>
impl<I> Unpin for InMemDataset<I>
impl<I> UnsafeUnpin for InMemDataset<I>where
Vec<I>: UnsafeUnpin,
impl<I> UnwindSafe for InMemDataset<I>where
Vec<I>: UnwindSafe,
Blanket Implementations§
Source§impl<T> BorrowMut<T> for Twhere
T: ?Sized,
impl<T> BorrowMut<T> for Twhere
T: ?Sized,
Source§fn borrow_mut(&mut self) -> &mut T
fn borrow_mut(&mut self) -> &mut T
Mutably borrows from an owned value. Read more
impl<ST, DT> CastableFrom<ST, Initialized, Initialized> for DT
impl<ST, DT> CastableFrom<ST, Uninit, Uninit> for DT
Source§impl<T> Downcast for Twhere
T: Any,
impl<T> Downcast for Twhere
T: Any,
Source§fn into_any(self: Box<T>) -> Box<dyn Any>
fn into_any(self: Box<T>) -> Box<dyn Any>
Converts
Box<dyn Trait> (where Trait: Downcast) to Box<dyn Any>, which can then be
downcast into Box<dyn ConcreteType> where ConcreteType implements Trait.Source§fn into_any_rc(self: Rc<T>) -> Rc<dyn Any>
fn into_any_rc(self: Rc<T>) -> Rc<dyn Any>
Converts
Rc<Trait> (where Trait: Downcast) to Rc<Any>, which can then be further
downcast into Rc<ConcreteType> where ConcreteType implements Trait.Source§fn as_any(&self) -> &(dyn Any + 'static)
fn as_any(&self) -> &(dyn Any + 'static)
Converts
&Trait (where Trait: Downcast) to &Any. This is needed since Rust cannot
generate &Any’s vtable from &Trait’s.Source§fn as_any_mut(&mut self) -> &mut (dyn Any + 'static)
fn as_any_mut(&mut self) -> &mut (dyn Any + 'static)
Converts
&mut Trait (where Trait: Downcast) to &Any. This is needed since Rust cannot
generate &mut Any’s vtable from &mut Trait’s.Source§impl<T> DowncastSend for T
impl<T> DowncastSend for T
Source§impl<T> DowncastSync for T
impl<T> DowncastSync for T
impl<T> ErasedDestructor for Twhere
T: 'static,
Source§impl<T> Instrument for T
impl<T> Instrument for T
Source§fn instrument(self, span: Span) -> Instrumented<Self> ⓘ
fn instrument(self, span: Span) -> Instrumented<Self> ⓘ
Source§fn in_current_span(self) -> Instrumented<Self> ⓘ
fn in_current_span(self) -> Instrumented<Self> ⓘ
Source§impl<T> IntoEither for T
impl<T> IntoEither for T
Source§fn into_either(self, into_left: bool) -> Either<Self, Self> ⓘ
fn into_either(self, into_left: bool) -> Either<Self, Self> ⓘ
Converts
self into a Left variant of Either<Self, Self>
if into_left is true.
Converts self into a Right variant of Either<Self, Self>
otherwise. Read moreSource§fn into_either_with<F>(self, into_left: F) -> Either<Self, Self> ⓘ
fn into_either_with<F>(self, into_left: F) -> Either<Self, Self> ⓘ
Converts
self into a Left variant of Either<Self, Self>
if into_left(&self) returns true.
Converts self into a Right variant of Either<Self, Self>
otherwise. Read moreSource§impl<T> Pointable for T
impl<T> Pointable for T
impl<T> Read<Exclusive, BecauseExclusive> for Twhere
T: ?Sized,
impl<T> WasmNotSend for Twhere
T: Send,
impl<T> WasmNotSendSync for Twhere
T: WasmNotSend + WasmNotSync,
impl<T> WasmNotSync for Twhere
T: Sync,
Source§impl<I, T> Windows<I> for Twhere
T: Dataset<I>,
impl<I, T> Windows<I> for Twhere
T: Dataset<I>,
Source§fn windows(&self, size: usize) -> WindowsIterator<'_, I> ⓘ
fn windows(&self, size: usize) -> WindowsIterator<'_, I> ⓘ
Is empty if the Dataset is shorter than size.
§Panics
Panics if size is 0.
§Examples
use crate::burn_dataset::{
transform::{Windows, WindowsDataset},
Dataset, InMemDataset,
};
let items = [1, 2, 3, 4].to_vec();
let dataset = InMemDataset::new(items.clone());
for window in dataset.windows(2) {
// window is a Result<Vec<I>, DatasetError>
}