Rekursiver Suchwert mit Polaren?Python

Python-Programme
Anonymous
 Rekursiver Suchwert mit Polaren?

Post by Anonymous »

Ich möchte in der Lage sein, die manager_id jedes Managers rekursiv mithilfe einer polaren DF abzurufen, die zwei Spalten hat:
"employee_id", "manager_1_id"
In Pandas war dieser Code:

Code: Select all

id_index = df.set_index("employee_id")["manager_1_id"]
for i in range(1, 12):
df[f"manager_{str(i + 1)}_id"] = df[f"manager_{str(i)}_id"].map(id_index)
Jeder manager_id-Wert ist auch eine Mitarbeiter-ID und letztendlich möchte ich eine Spalte pro Manager:
"employee_id, manager_1_id, manager_2_id, manager_3_id, ..."
Gibt es eine gute Möglichkeit, dies mit Polars zu erreichen, ohne das Pandas-Snippet auszuführen? Ich habe versucht, einige Links-Joins zu durchlaufen, aber das schien mir kein guter Ansatz zu sein.
Bearbeiten: Beispiel ist unten. Die Rohdaten bestehen aus zwei Spalten: der Mitarbeiter-ID (alle vielen tausend Mitarbeiter) und der Mitarbeiter-ID ihres direkten Vorgesetzten.

Code: Select all

employee_id | manager_1_id
1       |      3
2       |      5
3       |      4
4       |      5
5       |
Ziel ist es, dies in Spalten zu erweitern (manager_1 bis manager_12)

Code: Select all

employee_id | manager_1_id | manager_2_id | manager_3_id | ...
1              3             4              5
2              5
3              4             5
5              5
5
Hoffentlich ist das klar. Mitarbeiter 1 berichtet an Mitarbeiter 3, dieser berichtet an Mitarbeiter 4, der wiederum an Mitarbeiter 5 berichtet. Mitarbeiter 5 ist der CEO, der niemandem unterstellt ist.

Quick Reply

Change Text Case: 
   
  • Similar Topics
    Replies
    Views
    Last post