Код: Выделить всё
import polars as pl
df = pl.DataFrame(
{"name": list("abcdef"), "age": [21, 31, 32, 53, 45, 26], "country": list("AABBBC")}
)
df.group_by("country").agg(
pl.col("name").sort_by("age").first().alias("age_sort_1"),
pl.col("name").sort_by("age").get(2).alias("age_sort_2"), # OutOfBoundsError: index out of bounds
# pl.col("name").sort_by("age").arr.get(2, null_on_oob=True).alias("age_2"),
# SchemaError: invalid series dtype: expected `FixedSizeList`, got `str`
pl.col("name").sort_by("age").last().alias("age_sort_-1")
)
Однако Expr.get не предоставляет параметр null_on_oob. Как автоматически заполнять значение null при возникновении ситуации выхода за границы?
Кроме того, метод .arr.get предоставляет параметр null_on_oob, но сообщает об ошибке SchemaError: недопустимая серия dtype: ожидается «FixedSizeList», получено «str». Я не знаю, к чему относится эта ошибка и как ее решить.
ps: В приведенном выше коде используется повторяющийся код pl.col("name").sort_by("возраст") много раз. Есть ли более краткий метод?
Подробнее: https://stackoverflow.com/questions/788 ... -column-an
Мобильная версия