Skip to main content

ToDataFrameExt

Trait ToDataFrameExt 

Source
pub trait ToDataFrameExt: IntoDataFrame + Sized {
    // Provided method
    fn to_data_frame(self) -> ToDataFrame<Self> { ... }
}
Expand description

Extension trait for wrapping values as ToDataFrame.

This trait is automatically implemented for all types that implement IntoDataFrame.

§Example

use miniextendr_api::convert::ToDataFrameExt;

struct TimeSeries {
    timestamps: Vec<f64>,
    values: Vec<f64>,
}

impl IntoDataFrame for TimeSeries {
    fn into_data_frame(self) -> List {
        List::from_pairs(vec![
            ("timestamp", self.timestamps),
            ("value", self.values),
        ])
        .set_class_str(&["data.frame"])
        .set_row_names_int(self.timestamps.len())
    }
}

let ts = TimeSeries { timestamps: vec![1.0, 2.0], values: vec![10.0, 20.0] };
let wrapped: ToDataFrame<TimeSeries> = ts.to_data_frame();

Provided Methods§

Source

fn to_data_frame(self) -> ToDataFrame<Self>

Wrap self in ToDataFrame for R data.frame conversion.

Dyn Compatibility§

This trait is not dyn compatible.

In older versions of Rust, dyn compatibility was called "object safety", so this trait is not object safe.

Implementors§