map示例
map将自定义函数应用于每一列,注意map不考虑组别。如果需要考虑组别应该使用apply,见分组和聚合。
#![allow(unused)] fn main() { let df = df![ "C" => [11, 13, 12, 10, 15, 14], "A" => [21, 23, 22, 20, 25, 24], "B" => [31, 33, 32, 30, 35, 34], ]?; let a= SpecialEq::<Arc::<dyn FunctionOutputField>>::from_type(DataType::Int32); let f=|x|{Ok(Some(x+1))}; //由于rust是静态编译,因此返回值类型必须编译时可知。map函数的第二个参数用来标记返回值类型。 let imploded = df.lazy().select([col("*").map(f,a).name().prefix("map_")]).collect(); }