Enum polars_lazy::logical_plan::LogicalPlan [−][src]
pub enum LogicalPlan {
Show 16 variants
Selection {
input: Box<LogicalPlan>,
predicate: Expr,
},
Cache {
input: Box<LogicalPlan>,
},
CsvScan {
path: PathBuf,
schema: SchemaRef,
options: CsvParserOptions,
predicate: Option<Expr>,
aggregate: Vec<Expr>,
},
ParquetScan {
path: PathBuf,
schema: SchemaRef,
with_columns: Option<Vec<String>>,
predicate: Option<Expr>,
aggregate: Vec<Expr>,
stop_after_n_rows: Option<usize>,
cache: bool,
},
DataFrameScan {
df: Arc<DataFrame>,
schema: SchemaRef,
projection: Option<Vec<Expr>>,
selection: Option<Expr>,
},
LocalProjection {
expr: Vec<Expr>,
input: Box<LogicalPlan>,
schema: SchemaRef,
},
Projection {
expr: Vec<Expr>,
input: Box<LogicalPlan>,
schema: SchemaRef,
},
Aggregate {
input: Box<LogicalPlan>,
keys: Arc<Vec<Expr>>,
aggs: Vec<Expr>,
schema: SchemaRef,
apply: Option<Arc<dyn DataFrameUdf>>,
maintain_order: bool,
},
Join {
input_left: Box<LogicalPlan>,
input_right: Box<LogicalPlan>,
schema: SchemaRef,
left_on: Vec<Expr>,
right_on: Vec<Expr>,
options: JoinOptions,
},
HStack {
input: Box<LogicalPlan>,
exprs: Vec<Expr>,
schema: SchemaRef,
},
Distinct {
input: Box<LogicalPlan>,
maintain_order: bool,
subset: Arc<Option<Vec<String>>>,
},
Sort {
input: Box<LogicalPlan>,
by_column: Vec<Expr>,
reverse: Vec<bool>,
},
Explode {
input: Box<LogicalPlan>,
columns: Vec<String>,
},
Slice {
input: Box<LogicalPlan>,
offset: i64,
len: usize,
},
Melt {
input: Box<LogicalPlan>,
id_vars: Arc<Vec<String>>,
value_vars: Arc<Vec<String>>,
schema: SchemaRef,
},
Udf {
input: Box<LogicalPlan>,
function: Arc<dyn DataFrameUdf>,
predicate_pd: bool,
projection_pd: bool,
schema: Option<SchemaRef>,
},
}
This is supported on crate feature
compile
only.Variants
Filter on a boolean mask
Fields of Selection
input: Box<LogicalPlan>
predicate: Expr
Cache the input at this point in the LP
Fields of Cache
input: Box<LogicalPlan>
This is supported on crate feature
csv-file
only.Scan a CSV file
Fields of CsvScan
This is supported on crate feature
parquet
only.Scan a Parquet file
Fields of ParquetScan
In memory DataFrame
Fields of DataFrameScan
Fields of LocalProjection
Column selection
Fields of Projection
Groupby aggregation
Fields of Aggregate
Join operation
Fields of Join
input_left: Box<LogicalPlan>
input_right: Box<LogicalPlan>
schema: SchemaRef
left_on: Vec<Expr>
right_on: Vec<Expr>
options: JoinOptions
Adding columns to the table without a Join
Fields of HStack
Remove duplicates from the table
Sort the table
An explode operation
Fields of Explode
input: Box<LogicalPlan>
columns: Vec<String>
Slice the table
Fields of Slice
A Melt operation
Fields of Melt
A User Defined Function
Fields of Udf
input: Box<LogicalPlan>
function: Arc<dyn DataFrameUdf>
predicate_pd: bool
allow predicate pushdown optimizations
projection_pd: bool
allow projection pushdown optimizations
schema: Option<SchemaRef>
Implementations
Trait Implementations
Performs the conversion.
Performs the conversion.
Auto Trait Implementations
impl !RefUnwindSafe for LogicalPlan
impl Send for LogicalPlan
impl Sync for LogicalPlan
impl Unpin for LogicalPlan
impl !UnwindSafe for LogicalPlan
Blanket Implementations
Mutably borrows from an owned value. Read more