Recherche du maximum d'une colonne en faisant correspondre une autre condition de colonneSalut à tous,
Je dois trouver la valeur maximale dans une colonne (: PMA Counter) après avoir vérifié la condition dans une autre colonne (: Condition). la colonne de condition a des caractères «Après» et «Avant» pour les différentes lignes.
Je veux choisir ceux qui sont "Après" et définir le maximum de (: Compteur PMA) entre eux. J'utilise déjà le script ci-dessous mais il ne fonctionne pas et ne me donne que le Max sans tenir compte de la colonne Condition.
dt = Table actuelle ();
dt << Sélectionnez Où (Contient (: Condition, "Après"));
dt << Nouvelle colonne ("Compteur PMA actuel", Caractère, Nominal, Formule (Col Max (: Compteur PMA)));
ScriptingRe: trouver le maximum d'une colonne en faisant correspondre une autre condition de colonneLa ligne Select n'est pas prise en compte par la formule. Voici un moyen de gérer ce dont vous avez besoin
dt << New Column( "Current PMA Counter",
Character,
Nominal,
Formula( Col Max( If( Contains( :Condition, "After" ), :PMA Counter, . ) ) )
);
Re: trouver le maximum d'une colonne en faisant correspondre une autre condition de colonneMerci beaucoup Jim:)Re: trouver le maximum d'une colonne en faisant correspondre une autre condition de colonnePuis-je avoir le maximum uniquement dans les lignes liées aux lignes «Après»?Re: trouver le maximum d'une colonne en faisant correspondre une autre condition de colonneJe ne comprends pas ce que vous demandez.Re: trouver le maximum d'une colonne en faisant correspondre une autre condition de colonneJe voulais dire que seules les lignes qui avaient «Après» dans la colonne Condition obtiennent la valeur Max dans la colonne Compteur PMA actuel. Les autres lignes restent vides.Re: trouver le maximum d'une colonne en faisant correspondre une autre condition de colonneVoici quelques versions de la formule (elles ne sont pas testées). Ils diffèrent par ce sur quoi le Col Max est basé
// formula where col max is based upon only rows with "After" in PMA Counter
// and the Col Max only appears in rows where PMA Counter has "After" in it
dt << New Column( "Current PMA Counter",
Character,
Nominal,
Formula(
If( Row() == 1,
x = Col Max( If( Contains( :Condition, "After" ), :PMA Counter, . ) )
);
If( Contains( :Condition, "After" ),
y = x,
y = .
);
y;
)
);
// formula where col max is based upon all rows
// and the Col Max only appears in rows where PMA Counter has "After" in it
dt << New Column( "Current PMA Counter",
Character,
Nominal,
Formula(
If( Row() == 1,
x = Col Max( :PMA Counter )
);
If( Contains( :Condition, "After" ),
y = x,
y = .
);
y;
)
);
Re: trouver le maximum d'une colonne en faisant correspondre une autre condition de colonneMerci, Jim
il trouve la valeur mais, pour une raison quelconque, n'apparaît pas dans la colonne. Le compteur PMA actuel est tout vide