← retour aux snippets

pandas: explode (listes → lignes)

Transformer des listes en lignes séparées.

python pandas #pandas#explode#lists

objectif

Transformer des listes en lignes séparées.

code minimal

import pandas as pd
df = pd.DataFrame({"id":[1,2], "tags":[["a","b"], ["c"]]})
print(df.explode("tags").shape[0])

utilisation

import pandas as pd
df = pd.DataFrame({"x":[[1,2],[3]]})
print(pd.DataFrame({"v":df["x"].explode()})["v"].tolist())

variante(s) utile(s)

import pandas as pd
df = pd.DataFrame({"x":[[],[1]]})
print(df.explode("x", ignore_index=True).shape[0])

notes

  • Attention aux listes vides (génèrent NaN).