Trouver combien de fois une entrée a été répétée dans une colonne à l'aide de JSLSalut tout le monde,
J'écris un script jsl pour trouver les entrées de chaîne répétées (c'est-à-dire les lignes) dans une colonne. La colonne répertorie essentiellement différents tests qui sont généralement répétés.
Ce que j'essaie de trouver, c'est que si je peux trouver le nombre de fois que ces lignes ont été répétées, sélectionnez les N premières entrées répétées, puis insérez ces entrées sélectionnées dans une liste à analyser par le générateur de graphiques ou par tabulation.
Toute aide est appréciée.
Automatisation et scriptsAnalyse et modélisation des données de baseAccès aux donnéesRe : Trouver combien de fois une entrée a été répétée dans une colonne à l'aide de JSLVoici comment j'aborderais cela
names default to here(1);
dt=current data table();
// Get each different string value and the number of repeated strings
summarize(dt, byGroup = by(:sex), number = count(:height));
show( byGroup, number );
// To find which rows that have the same values
theRows = dt << get rows where( :sex == byGroup[1] );
show(theRows);
Re : Trouver combien de fois une entrée a été répétée dans une colonne à l'aide de JSLPourriez-vous fournir un exemple (et une solution à l'exemple) afin qu'il soit plus facile de comprendre ce que vous essayez de réaliser, car au moins trois cas différents me viennent à l'esprit.
Re : Trouver combien de fois une entrée a été répétée dans une colonne à l'aide de JSLmerci @txnelson pour votre solution. Cela fonctionne parfaitement pour rechercher les colonnes en double et combien de fois elles ont été dupliquées. Le problème que j'ai maintenant est que j'essaie de trouver les N premières chaînes répétées (ex : N = 5) et de les jeter dans une liste pour une évaluation plus approfondie. Je n'ai pu trouver que l'élément le plus haut de la liste.
Ma question, existe-t-il un moyen de trouver les N premiers éléments où N peut être n'importe quel nombre entier ? Merci!
J'ai modifié le code comme indiqué ci-dessous :
names default to here(1);
dt=current data table();
// Get each different string value and the number of repeated strings
summarize(dt, byGroup = by(:Temp_), number = count(:Site));
list = {};
list[1] = 0;
// To find which rows that have the same values
for(i=2, i <N items=""></N>Re : Trouver combien de fois une entrée a été répétée dans une colonne à l'aide de JSLSalut @jthi .
Un exemple de cela serait la colonne Sexe dans les données jmp de grande classe. Il y a F et M dans la colonne, et cela est répété plusieurs fois. Je voudrais écrire un script jsl qui compte combien de fois F ou M a été répété. Le code fourni par @txnelson fonctionne parfaitement dans ce cas. Est-ce que cela a plus de sens ? Merci
Re : Trouver combien de fois une entrée a été répétée dans une colonne à l'aide de JSLVous pouvez utiliser Summarize pour trouver le nombre d'éléments, puis pour trouver le top 5, vous pouvez par exemple utiliser Reverse(Rank()) sur le nombre et utiliser les indices trouvés sur vos groupes.
Names Default To Here(1);
dt = Open("$SAMPLE_DATA/Big Class.jmp");
// Get each different string value and the number of repeated strings
Summarize(dt, uniq = by(:age), count = Count(:height)); // some column which is numeric to Count
r = Reverse(Rank(count));
top5 = Try(uniq[r][1::5], uniq[r]);
show(uniq, count, top5);