Abrufen des Min/Max-Spaltennamens in PolarsPython

Python-Programme
Anonymous
 Abrufen des Min/Max-Spaltennamens in Polars

Post by Anonymous »

In Polaren kann ich das horizontale Maximum (Maximalwert einer Reihe von Spalten für die Reichweitenzeile) wie folgt ermitteln:

Code: Select all

df = pl.DataFrame(
{
"a": [1, 8, 3],
"b": [4, 5, None],
}
)

df.with_columns(max = pl.max_horizontal("a", "b"))
┌─────┬──────┬─────┐
│ a   ┆ b    ┆ max │
│ --- ┆ ---  ┆ --- │
│ i64 ┆ i64  ┆ i64 │
╞═════╪══════╪═════╡
│ 1   ┆ 4    ┆ 4   │
│ 8   ┆ 5    ┆ 8   │
│ 3   ┆ null ┆ 3   │
└─────┴──────┴─────┘
Dies entspricht Pandas df[["a", "b"]].max(axis=1)..
Wie erhalte ich nun die Spaltennamen anstelle des tatsächlichen Maximalwerts?
Mit anderen Worten, was ist die Polars-Version von Pandas' df[["a", "b"]].idxmax(axis=1)?
Die erwartete Ausgabe wäre:

Code: Select all

┌─────┬──────┬─────┐
│ a   ┆ b    ┆ max │
│ --- ┆ ---  ┆ --- │
│ i64 ┆ i64  ┆ str │
╞═════╪══════╪═════╡
│ 1   ┆ 4    ┆ b   │
│ 8   ┆ 5    ┆ a   │
│ 3   ┆ null ┆ a   │
└─────┴──────┴─────┘

Quick Reply

Change Text Case: 
   
  • Similar Topics
    Replies
    Views
    Last post