objectif
Valider le type de jointure (1:1, 1:m, m:1, m:m).
code minimal
import pandas as pd
a = pd.DataFrame({"id":[1,2]})
b = pd.DataFrame({"id":[1,2,2]})
m = a.merge(b, on="id", validate="1:m")
print(m.shape[0] >= 2)
utilisation
import pandas as pd
a = pd.DataFrame({"id":[1,1]}); b = pd.DataFrame({"id":[1]})
try:
a.merge(b, on="id", validate="1:1")
ok = False
except Exception:
ok = True
print(ok)
variante(s) utile(s)
import pandas as pd
a = pd.DataFrame({"id":[1,2]}); b = pd.DataFrame({"id":[1,2]})
print(a.merge(b, on="id", validate="1:1").shape[0])
notes
validatelève si la cardinalité attendue n’est pas respectée.