Skip to main content

Lignes

La brick Lignes (catégorie Transform) applique une liste ordonnée d'opérations sur les lignes du flux : filtrer, trier, échantillonner, dédoublonner, limiter. Elle prend un flux en entrée (in) et produit un flux en sortie (out) ; les colonnes ne changent pas, seuls le nombre et l'ordre des lignes évoluent.

note

Les opérations s'appliquent dans l'ordre déclaré : un limit placé avant un sort ne garde pas les mêmes lignes qu'après. Les logs d'exécution (niveau debug) tracent le nombre de lignes avant/après chaque opération.

Opérations disponibles​

filter : filtrer sur une condition​

ParamètreTypeDescription
expressiontexteCondition de filtre, syntaxe pandas query (requis)

Seules les lignes qui satisfont la condition sont conservées. Exemples : age >= 18, pays == "FR" and montant > 100, statut in ["actif", "test"]. Une expression invalide fait échouer l'exécution (l'erreur est tracée dans les logs).

Avant → après (expression: montant > 50) :

clientmontantclientmontant
Ada120→Ada120
Bob30→

sort : trier​

ParamètreTypeDescription
bylisteCritères de tri, chacun avec column (texte) et ascending (booléen, défaut true)

Tri multi-colonnes stable : à valeurs égales sur les critères, l'ordre d'origine est préservé. Les colonnes inexistantes sont ignorées.

Avant → après (by: pays ascendant, puis montant descendant) :

paysmontantpaysmontant
FR30→DE80
DE80→FR120
FR120→FR30

sample : échantillonner​

ParamètreTypeDescription
modetextetop (défaut), random ou stratified
nentierTaille de l'échantillon (défaut 100)
by_columntexteColonne de stratification (mode stratified uniquement)
seedentierGraine aléatoire, pour un tirage reproductible (optionnel)
  • top : les n premières lignes ;
  • random : n lignes tirées au hasard ;
  • stratified : environ n lignes réparties équitablement entre les valeurs de by_column (au moins une ligne par groupe). Si by_column est absent du flux, la brick retombe sur le mode top avec un avertissement.

dedup : dédoublonner​

ParamètreTypeDescription
columnsliste de textesColonnes définissant le doublon (défaut : toutes les colonnes)
keeptexteOccurrence conservée : first (défaut) ou last

Avant → après (columns: [email], keep: first) :

emailvilleemailville
ada@ex.frParis→ada@ex.frParis
ada@ex.frLyon→bob@ex.frNice
bob@ex.frNice→

limit : limiter (avec décalage)​

ParamètreTypeDescription
nentierNombre maximal de lignes conservées (défaut 100)
offsetentierNombre de lignes sautées au début (défaut 0)

Avant → après (n: 2, offset: 1) :

idid
1→2
2→3
3→
4→

Bonnes pratiques​

  • Filtrez tôt : placer filter en début de liste (et la brick Lignes tôt dans le pipeline) réduit le volume traité par tout ce qui suit.
  • Combinez sort puis dedup avec keep pour maîtriser quelle occurrence d'un doublon survit (par exemple la plus récente).
  • En développement, un sample en mode top accélère les tests ; fixez seed en mode random pour des exécutions reproductibles.
  • Pour filtrer sur une condition tout en conservant les lignes rejetées dans une autre branche, utilisez plutôt la brick Route.

Anciennes bricks remplacées​

Cette méga-brick remplace les bricks atomiques Filter, Filter Rows, Sort et Sample ; les opérations dedup et limit n'avaient pas d'équivalent atomique. Voir Bricks héritées pour la table de correspondance.