Rechercher et identifier les doublons pour les données non triéesJMP étant assez nouveau, mes connaissances sur l'utilisation des formules sont donc assez limitées.
Si j'ai une colonne de valeurs (caractère) et que je veux les identifier comme des doublons dans une autre colonne, quelle formule dois-je utiliser ? (Mes données ont 10 colonnes déjà triées par les valeurs d'une colonne différente)
Dans le passé, j'ai utilisé la formule ci-dessous (lorsque les données nécessitant l'identification de doublons ont été triées par ordre alphabétique).
If(
Row() == 1, 1,
:Column1 != Lag( :Column1 ), 1,
0
)
Étant donné que je ne suis pas autorisé à présenter des données triées d'une autre manière que la façon dont elles arrivent, je suis un peu perdu quant à la façon d'indiquer les doublons.
Toute aide est appréciée.
Ingénierie de la qualité et des procédésRe : Rechercher et identifier les doublons pour les données non triéesMerci beaucoup. J'ai pu marquer sans utiliser le script.
Apprécier ton aide!
Re : Rechercher et identifier les doublons pour les données non triéesVoici un autre exemple utilisant une formule de colonne.
dt = Open( "$SAMPLE_DATA/Big Class.jmp" );
// Create a column that indicates duplicate names (there are two "Robert")
dt << New Column( "Duplicate", Formula( If( Col Number( Row(), :name ) > 1, 1, 0 ) ) );
Re : Rechercher et identifier les doublons pour les données non triéesVous pouvez également le faire en tant que colonne de formule en utilisant la formule ci-dessous qui utilise la table de données Big Class comme exemple
If( Row() == 1,
Current Data Table() << select duplicate rows(
Match( :age, :sex, Empty() )
)
);
If( Selected( Row State( Row() ) ),
"Group 1",
"Group 2"
);
Re : Rechercher et identifier les doublons pour les données non triéesVous trouverez ci-dessous au moins deux façons de procéder avec les scripts :
Names Default To Here(1);
dt = New Table("Untitled",
Add Rows(7),
Compress File When Saved(1),
New Column("Column 1",
Numeric,
"Continuous",
Format("Best", 12),
Set Values([1, 1, 2, 3, 2, 5, 1]),
Set Display Width(60)
)
);
dt << New column("Dublicate_formula", Numeric, <<FORMULA> 1, 1,0))
);
dt << Select duplicate rows(Match(:column 1));
dubRows = dt << Get Selected Rows;
dt << New Column("Dublicates", Numeric, Nominal);
Column(dt, "Dublicates")[dubRows] = 1;
Column(dt, "Dublicates")[dt << Get Rows Where(IsMissing(:Dublicates))] = 0;</FORMULA>Vous pouvez également le faire sans aucun script :
- Sélectionnez les colonnes qui vous intéressent.
- Dans le menu Lignes : Sélection de ligne -> Sélectionner les lignes en double
- Menu Lignes : Sélection de ligne -> Sélection de nom dans la colonne
- Choisissez le nom, sélectionné comme 1 et non sélectionné comme 0
Re : Rechercher et identifier les doublons pour les données non triéesMerci pour votre réponse.
Je pense que je ne me suis pas bien expliqué. Ce que je veux, c'est une colonne d'assistance pour indiquer si une certaine valeur est en double, peut-être avec un "1" indiquant tous les doublons et un "0" indiquant aucun doublon. Je ne veux pas cacher ou supprimer les doublons.
Re : Rechercher et identifier les doublons pour les données non triées
Peut-être que cette ligne aide
dt = Current Data Table();
dt << Select duplicate rows( Match( :column_1, :column_2, :column_3) );
Cela sélectionnera les lignes qui ne sont pas uniques dans la combinaison supérieure des colonnes 1 à 3.
Avec la sélection, vous pouvez maintenant supprimer, masquer et exclure, remplir une colonne supplémentaire ou ce que vous voulez en faire.
r_select = dt << select rows( dt << get selected rows ); // this gets you a vector of row number.
r_select << Delete Rows;
// or
r_select << Hide and Exclude;