Regrouper les valeurs des lignes sélectionnéesSalut,
J'essaie de regrouper les valeurs des lignes sélectionnées
Voici le dt :

Le résultat final devrait ressembler à ceci. Combinez donc les valeurs du produit avec un pourcentage similaire. Toute suggestion?

dt = Current Data Table();
dt << select duplicate rows( Match( :Label, :Percent ) );
Try( dt<< delete rows );
Automatisation et scriptsRe : Regrouper les valeurs des lignes sélectionnéesFermer ceci
Voici une façon
Names Default To Here( 1 );
dt = Current Data Table();
aa = Associative Array( :Percent << get values );
For Each( {{key, value}}, aa, aa[key] = dt[Loc( dt[0, "Percent"], key ), "Product"] );
dt << New Column( "Product Code Range", Character, Nominal, <<SET each="" value=""></SET>
Re : Regrouper les valeurs des lignes sélectionnéesAyant déjà fait ce genre de chose, je vous suggère d'arrondir la colonne Pourcentage avant de les regrouper. Les valeurs en pourcentage de 0,5 et 0,5001 peuvent être formatées pour être affichées sous la forme 0,50, mais elles créeront des groupes différents. Parfois, j'ai constaté qu'un tel script nécessiterait non seulement l'arrondi, mais également la conversion en colonne de caractères pour que le code soit robuste.
Re : Regrouper les valeurs des lignes sélectionnéesBelle solution de contournement:)
des « agrégations » de caractères comme celle-ci - en quelques clics de souris ?
Voici le souhait :
https://community.jmp.com/t5/JMP-Wish-List/Summary-and-Tabulate-add-aggregation-option-for-Character/idi-p/659314
Re : Regrouper les valeurs des lignes sélectionnéesJe fais ce type d'agrégations dans JMP en utilisant SQL (et comme Jim l'a dit, la conversion en caractères (ou l'arrondi) devrait très probablement être effectuée. L'une des raisons étant les mathématiques à virgule flottante (30000000000000004.com) )
Names Default To Here(1);
dt = Open("$DOWNLOADS/product_dt.jmp");
dt << New Column("Selected", Numeric, Nominal, Formula(
Selected()
));
dt_result = Query(
Table(dt, "dt"),
"\[
SELECT Percent, Label, GROUP_CONCAT(Product, ',') AS Product
FROM dt
WHERE Selected = 1
GROUP BY Percent, Label
]\"
);