diff --git a/crates/nu_plugin_polars/src/dataframe/command/data/select.rs b/crates/nu_plugin_polars/src/dataframe/command/data/select.rs index 8c9a135f4b..6bcadb9d2b 100644 --- a/crates/nu_plugin_polars/src/dataframe/command/data/select.rs +++ b/crates/nu_plugin_polars/src/dataframe/command/data/select.rs @@ -72,7 +72,7 @@ impl PluginCommand for LazySelect { }, Example { description: "Select a column from a dataframe using a mix of expressions and record of expressions", - example: "[[a b]; [6 2] [4 2] [2 2]] | polars into-df | polars select a b {c: ((polars col a) * 2)}", + example: "[[a b]; [6 2] [4 2] [2 2]] | polars into-df | polars select a b {c: ((polars col a) ** 2)}", result: Some( NuDataFrame::try_from_columns( vec![ @@ -84,7 +84,7 @@ impl PluginCommand for LazySelect { vec![Value::test_int(2), Value::test_int(2), Value::test_int(2)]), Column::new( "c".to_string(), - vec![Value::test_int(12), Value::test_int(8), Value::test_int(4)]) + vec![Value::test_int(36), Value::test_int(16), Value::test_int(4)]) ], None, ) diff --git a/crates/nu_plugin_polars/src/dataframe/values/nu_expression/custom_value.rs b/crates/nu_plugin_polars/src/dataframe/values/nu_expression/custom_value.rs index b5a918f287..dc1db125ef 100644 --- a/crates/nu_plugin_polars/src/dataframe/values/nu_expression/custom_value.rs +++ b/crates/nu_plugin_polars/src/dataframe/values/nu_expression/custom_value.rs @@ -103,6 +103,9 @@ fn with_operator( Operator::Math(Math::FloorDivide) => { apply_arithmetic(plugin, engine, left, right, lhs_span, Div::div) } + Operator::Math(Math::Pow) => { + apply_arithmetic(plugin, engine, left, right, lhs_span, Expr::pow) + } Operator::Comparison(Comparison::Equal) => Ok(left .clone() .apply_with_expr(right.clone(), Expr::eq)