Transformations
Une transformation cree un jeu de donnees qui n’existe dans aucune source : elle prend des donnees en entree et produit de nouvelles donnees en sortie. Les transformations s’ecrivent en Python.
Elles servent a nettoyer ou recomposer les donnees avant qu’elles n’alimentent le graphe.
- Resultat stable — avec les memes entrees, une transformation donne toujours le meme resultat
- Isolee — elle ne lit et n’ecrit que ses entrees et ses sorties (pas d’acces aux fichiers ni au reseau)
- Enchainee automatiquement — si une transformation utilise le resultat d’une autre, GraphForge les execute dans le bon ordre
Creer une transformation
- Donnez un nom a la transformation
- Choisissez ses entrees (Input) : les jeux de donnees qu’elle lit
- Nommez ses sorties (Output) : les jeux de donnees qu’elle produit
- Ecrivez le code Python
Le code est une fonction transform :
- elle recoit
inputs, un dictionnaire qui contient chaque entree sous son nom - elle renvoie un dictionnaire qui contient chaque sortie sous son nom
Les noms utilises dans le code doivent etre exactement ceux declares en Input et en Output.
Exemple : passer en dollars la devise d’un contrat
| Champ | Valeur |
|---|---|
| Transformation | change_contract_currency |
| Input | Contrat |
| Output | Contrat_bis |
def transform(inputs: dict) -> dict: df = inputs["Contrat"].copy() df.loc[df["contrat"] == "Contrat FR-LED-2201 - Valeo", "currency"] = "USD" df["contrat"] = df["contrat"] + "_v2" return {"Contrat_bis": df}La transformation lit le jeu Contrat, passe la devise du contrat FR-LED-2201 en USD, ajoute _v2 au nom de chaque contrat, puis renvoie le resultat sous le nom Contrat_bis.
