Enum polars::prelude::LogicalPlan[][src]

pub enum LogicalPlan {
Show variants Selection { input: Box<LogicalPlan, Global>, predicate: Expr, }, Cache { input: Box<LogicalPlan, Global>, }, CsvScan { path: PathBuf, schema: Arc<Schema>, has_header: bool, delimiter: u8, ignore_errors: bool, skip_rows: usize, stop_after_n_rows: Option<usize>, with_columns: Option<Vec<String, Global>>, predicate: Option<Expr>, aggregate: Vec<Expr, Global>, cache: bool, }, ParquetScan { path: PathBuf, schema: Arc<Schema>, with_columns: Option<Vec<String, Global>>, predicate: Option<Expr>, aggregate: Vec<Expr, Global>, stop_after_n_rows: Option<usize>, cache: bool, }, DataFrameScan { df: Arc<DataFrame>, schema: Arc<Schema>, projection: Option<Vec<Expr, Global>>, selection: Option<Expr>, }, LocalProjection { expr: Vec<Expr, Global>, input: Box<LogicalPlan, Global>, schema: Arc<Schema>, }, Projection { expr: Vec<Expr, Global>, input: Box<LogicalPlan, Global>, schema: Arc<Schema>, }, Aggregate { input: Box<LogicalPlan, Global>, keys: Arc<Vec<Expr, Global>>, aggs: Vec<Expr, Global>, schema: Arc<Schema>, apply: Option<Arc<dyn DataFrameUdf + 'static>>, }, Join { input_left: Box<LogicalPlan, Global>, input_right: Box<LogicalPlan, Global>, schema: Arc<Schema>, how: JoinType, left_on: Vec<Expr, Global>, right_on: Vec<Expr, Global>, allow_par: bool, force_par: bool, }, HStack { input: Box<LogicalPlan, Global>, exprs: Vec<Expr, Global>, schema: Arc<Schema>, }, Distinct { input: Box<LogicalPlan, Global>, maintain_order: bool, subset: Arc<Option<Vec<String, Global>>>, }, Sort { input: Box<LogicalPlan, Global>, by_column: String, reverse: bool, }, Explode { input: Box<LogicalPlan, Global>, columns: Vec<String, Global>, }, Slice { input: Box<LogicalPlan, Global>, offset: i64, len: usize, }, Melt { input: Box<LogicalPlan, Global>, id_vars: Arc<Vec<String, Global>>, value_vars: Arc<Vec<String, Global>>, schema: Arc<Schema>, }, Udf { input: Box<LogicalPlan, Global>, function: Arc<dyn DataFrameUdf + 'static>, predicate_pd: bool, projection_pd: bool, schema: Option<Arc<Schema>>, },
}

Variants

Selection

Filter on a boolean mask

Show fields

Fields of Selection

input: Box<LogicalPlan, Global>predicate: Expr
Cache

Cache the input at this point in the LP

Show fields

Fields of Cache

input: Box<LogicalPlan, Global>
CsvScan

Scan a CSV file

Show fields

Fields of CsvScan

path: PathBufschema: Arc<Schema>has_header: booldelimiter: u8ignore_errors: boolskip_rows: usizestop_after_n_rows: Option<usize>with_columns: Option<Vec<String, Global>>predicate: Option<Expr>

Filters at the scan level

aggregate: Vec<Expr, Global>

Aggregations at the scan level

cache: bool
ParquetScan

Scan a Parquet file

Show fields

Fields of ParquetScan

path: PathBufschema: Arc<Schema>with_columns: Option<Vec<String, Global>>predicate: Option<Expr>aggregate: Vec<Expr, Global>stop_after_n_rows: Option<usize>cache: bool
DataFrameScan

In memory DataFrame

Show fields

Fields of DataFrameScan

df: Arc<DataFrame>schema: Arc<Schema>projection: Option<Vec<Expr, Global>>selection: Option<Expr>
LocalProjection
Show fields

Fields of LocalProjection

expr: Vec<Expr, Global>input: Box<LogicalPlan, Global>schema: Arc<Schema>
Projection

Column selection

Show fields

Fields of Projection

expr: Vec<Expr, Global>input: Box<LogicalPlan, Global>schema: Arc<Schema>
Aggregate

Groupby aggregation

Show fields

Fields of Aggregate

input: Box<LogicalPlan, Global>keys: Arc<Vec<Expr, Global>>aggs: Vec<Expr, Global>schema: Arc<Schema>apply: Option<Arc<dyn DataFrameUdf + 'static>>
Join

Join operation

Show fields

Fields of Join

input_left: Box<LogicalPlan, Global>input_right: Box<LogicalPlan, Global>schema: Arc<Schema>how: JoinTypeleft_on: Vec<Expr, Global>right_on: Vec<Expr, Global>allow_par: boolforce_par: bool
HStack

Adding columns to the table without a Join

Show fields

Fields of HStack

input: Box<LogicalPlan, Global>exprs: Vec<Expr, Global>schema: Arc<Schema>
Distinct

Remove duplicates from the table

Show fields

Fields of Distinct

input: Box<LogicalPlan, Global>maintain_order: boolsubset: Arc<Option<Vec<String, Global>>>
Sort

Sort the table

Show fields

Fields of Sort

input: Box<LogicalPlan, Global>by_column: Stringreverse: bool
Explode

An explode operation

Show fields

Fields of Explode

input: Box<LogicalPlan, Global>columns: Vec<String, Global>
Slice

Slice the table

Show fields

Fields of Slice

input: Box<LogicalPlan, Global>offset: i64len: usize
Melt

A Melt operation

Show fields

Fields of Melt

input: Box<LogicalPlan, Global>id_vars: Arc<Vec<String, Global>>value_vars: Arc<Vec<String, Global>>schema: Arc<Schema>
Udf

A User Defined Function

Show fields

Fields of Udf

input: Box<LogicalPlan, Global>function: Arc<dyn DataFrameUdf + 'static>predicate_pd: bool

allow predicate pushdown optimizations

projection_pd: bool

allow projection pushdown optimizations

schema: Option<Arc<Schema>>

Implementations

impl LogicalPlan[src]

pub fn describe(&self) -> String[src]

Trait Implementations

impl Clone for LogicalPlan[src]

impl Debug for LogicalPlan[src]

impl Default for LogicalPlan[src]

impl From<LogicalPlan> for LazyFrame[src]

impl From<LogicalPlan> for LogicalPlanBuilder[src]

Auto Trait Implementations

Blanket Implementations

impl<T> Any for T where
    T: 'static + ?Sized
[src]

impl<T> Borrow<T> for T where
    T: ?Sized
[src]

impl<T> BorrowMut<T> for T where
    T: ?Sized
[src]

impl<T, U> Cast<U> for T where
    U: FromCast<T>, 

impl<T> From<T> for T[src]

impl<T> FromCast<T> for T

impl<T, U> Into<U> for T where
    U: From<T>, 
[src]

impl<T> Pointable for T

type Init = T

The type for initializers.

impl<T> ToOwned for T where
    T: Clone
[src]

type Owned = T

The resulting type after obtaining ownership.

impl<T, U> TryFrom<U> for T where
    U: Into<T>, 
[src]

type Error = Infallible

The type returned in the event of a conversion error.

impl<T, U> TryInto<U> for T where
    U: TryFrom<T>, 
[src]

type Error = <U as TryFrom<T>>::Error

The type returned in the event of a conversion error.

impl<V, T> VZip<V> for T where
    V: MultiLane<T>,