我想创建2个列表从一个列的基础上在其他列的条件.目前,我可以通过扫描双框获得2个列表.
- 是否可以在一次扫描中获得两个列表?
- 每个团体的名单?
data = {
"co2": [95, 90, 99, 104, 105, 94, 99, 104],
"model": [
"Citigo",
"Fabia",
"Fiesta",
"Rapid",
"Focus",
"Mondeo",
"Octavia",
"B-Max",
],
"car": ["Skoda", "Skoda", "Ford", "Skoda", "Ford", "Ford", "BMW", "Ford"],
}
df = pd.DataFrame(data)
# For 2 lists
list_skoda = df.loc[df["car"] == "Skoda", "model"].tolist()
print(f"{list_skoda=}")
list_others = df.loc[df["car"] != "Skoda", "model"].tolist()
print(f"{list_others=}")
# For individual groups
df.groupby(["car"]).apply(print)
l = df.groupby(["car"])["model"].groups
print(f"{l=}") # This gives indices not names
请建议.