如何获取Polars中每组的最大字符串?

问题描述 投票:0回答:1

我需要帮助返回 Polars 中给定列组的列中的最大字符串。我有一个针对最大数量的流程示例,但不适用于字符串。

import polars as pl

pl.__version__
# '0.15.2'

d_int = pl.DataFrame({
    "g": ["a", "a", "b"],
    "v": [1, 2, 3],
})

# works
(
    d_int
        .group_by("g")
        .agg(
            pl.col("v").min().alias("v_min"), 
            pl.col("v").max().alias("v_max")
            )
)


d_str = pl.DataFrame({
    "g": ["a", "a", "b"],
    "v": ["x", "y", "x"],
})


# returns nulls
(
    d_str
        .group_by("g")
        .agg(
            pl.col("v").min().alias("v_min"), 
            pl.col("v").max().alias("v_max")
            )
)

第一个计算有效,但第二个计算返回以下结果(带有空值)。

┌─────┬───────┬───────┐
│ g   ┆ v_min ┆ v_max │
│ --- ┆ ---   ┆ ---   │
│ str ┆ str   ┆ str   │
╞═════╪═══════╪═══════╡
│ a   ┆ null  ┆ null  │
│ b   ┆ null  ┆ null  │

python-polars
1个回答
2
投票

这是在

polars==0.15.3
中添加的,应该可以按预期工作。

© www.soinside.com 2019 - 2024. All rights reserved.