polars.LazyFrame.top_k
-
Возвращает
kстрок с наибольшими значениями.Ненулевые элементы всегда имеют приоритет над нулевыми, независимо от значения
reverse. Порядок результатов не гарантируется; если вы хотите отсортировать результаты, вызовитеsort()после этой функции.Изменено в версии 1.0.0: Параметр
descendingбыл переименован вreverse.- Параметры:
-
- k
-
Количество строк для возврата.
- by
-
Столбец (столбцы), используемый для определения строк с наибольшими значениями. Принимает выражения. Строки интерпретируются как имена столбцов.
- reverse
-
Рассматривать
kнаименьших элементов столбца (столбцов)by(вместоkнаибольших). Для каждого столбца можно задать отдельное значение, передав последовательность логических значений.
См. также
Примеры
>>> lf = pl.LazyFrame( ... { ... "a": ["a", "b", "a", "b", "b", "c"], ... "b": [2, 1, 1, 3, 2, 1], ... } ... )Получить строки, содержащие 4 наибольших значения в столбце b.
>>> lf.top_k(4, by="b").collect() shape: (4, 2) ┌─────┬─────┐ │ a ┆ b │ │ --- ┆ --- │ │ str ┆ i64 │ ╞═════╪═════╡ │ b ┆ 3 │ │ a ┆ 2 │ │ b ┆ 2 │ │ b ┆ 1 │ └─────┴─────┘
Получить строки, содержащие 4 наибольших значения при сортировке по столбцам b и a.
>>> lf.top_k(4, by=["b", "a"]).collect() shape: (4, 2) ┌─────┬─────┐ │ a ┆ b │ │ --- ┆ --- │ │ str ┆ i64 │ ╞═════╪═════╡ │ b ┆ 3 │ │ b ┆ 2 │ │ a ┆ 2 │ │ c ┆ 1 │ └─────┴─────┘
LazyFrame.top_k(
k: int,
*,
by: IntoExpr | Iterable[IntoExpr],
reverse: bool | Sequence[bool] = False,
) → LazyFrame
© 2020 Ritchie Vink
© 2022 Polars contributors
Licensed under the MIT License.
https://docs.pola.rs/api/python/stable/reference/lazyframe/api/polars.LazyFrame.top_k.html