在 Rust 中写出 Polars-Lazy 表达式

dkl*_*kla 5 rust rust-polars

我需要在 Polars_lazy 中编写自己的表达式。根据我对源代码的理解,我需要编写一个返回 Expr::Function 的函数。问题是为了构造这种类型的对象,必须提供 FunctionOptions 类型的对象。需要注意的是,这个类是公共的,但成员是 pub(crate) 的,因此在 create 之外无法构造这样的对象。有办法解决这个问题吗?

小智 3

我不认为你应该直接构造Exprs. 相反,您可以使用polars_lazy::dsl::col()和等函数polars_lazy::dsl::lit()来创建表达式,然后使用 on 方法Expr来构建表达式。其中一些方法(例如map()apply())将为您提供Expr::Function.