Вы используете yield
для создания генераторов.
import pandas as pd
import random
df = pd.DataFrame({"node": [random.randint(1, 11) for _ in range(8)],
"centroid": [random.randint(1, 5) for _ in range(8)]})
def list_gen(df):
for x in df.centroid.unique():
yield df[df["centroid"] == x].node.values
[x for x in list_gen(df)]
Это даст пустые массивы, но вы можете деконструировать их обратно в обычный list
, просто передав их в list
.