问题标签 [rust-polars]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
1 回答
36 浏览

python-polars - 在极地中,我可以自己创建具有级别的分类类型吗?

在 Pandas 中,我可以自己指定分类类型的级别:

这意味着

  1. 我可以确保不同的列和集合使用相同的 dtype
  2. 我可以指定级别的排序。

有没有办法用 Polars 做到这一点?我知道您可以使用字符串缓存功能以不同的方式实现 1),但是如果可以直接指定我的 dtype/levels,我很感兴趣。我不知道有什么方法可以实现 2),但是我认为 Arrow 中的分类 dtypes 确实允许可选排序,所以也许有可能?

0 投票
1 回答
36 浏览

rust-polars - 有没有办法应用在 Rust 极坐标中返回多个值的 UDF 函数?

我正在尝试使用极坐标将另一个库中的函数应用于输入的每一行。我找不到任何使用 Expr 应用函数的示例或测试,即使它有一个返回值;所以我迷路了。

它采用具有两个浮点列的输入数据框,并尝试附加由具有此形式的函数生成的三列:

有没有一种简单的方法可以做到这一点?

0 投票
0 回答
38 浏览

python - 如何在极地使用过滤器

在polars-py中,我可以这样做:

但是在polars-rs中,我怎么能做同样的过滤呢?

我在哪里可以找到一些关于 rust 中的 Expr 的文档?关于polars-rs的例子很少。

0 投票
1 回答
24 浏览

python-polars - 关于 Polars groupby 的问题

  • Q1:在 polars-rust 中,当你这样做时 gourpby.agg,我们可以head(10)用来获取 col 中的前 10 个元素。但是,如果组的长度不同,并且我需要获取20%每个组中的第一个元素,例如 120 个元素组中的 0-24 个元素。如何使它工作?

  • Q2:使用如下数据框示例,我的目标是循环数据框。因为 polars 是主要列,所以我将 df 向下转换为 serval ChunkedArrays 并通过 iter().zip() 进行迭代。我发现它比 goupby(col("date")) 之后的相同操作更快,它是循环一些列表元素。那个怎么样?在我看来,在 groupby 之后 df 的长度更短,这意味着更短的循环。

日期 库存 价格
2010-01-01 IBM 1000
2010-01-02 IBM 1001
2010-01-03 IBM 1002
2010-01-01 苹果 2900
2010-01-02 苹果 2901
2010-01-03 苹果 2902
0 投票
0 回答
64 浏览

python - 为什么 rust 中的 Polars groupby.agg 比 python 版本慢?

在 Polars-python 中,我可以做这个懒惰的动作,它花费大约 17 毫秒,几乎与急切版本的时间相同。数据有 100000 行。

数据样本:

但是在 Polars-rust 中,为什么惰性操作(基于发布模式)更慢?

这是打印输出

似乎 Polars-rust 中的 groupby.agg(non-lazy) 不能像 python 一样做同样的事情(complex expr)?

0 投票
1 回答
22 浏览

python-polars - 如何将 i64 Series/chunkedArray 转换为 polars-rust 中的 f64 或 String?

对于来自 DataFrame 列的 Series,如何将其转换为 f64 Series 或 f64 ChunkedArray?好像.apply_cast_numeric(|v| v as f64)失败了