Compter le nombre de zéros dans une colonne (JSL)<meta http-equiv="Content-Type" content="text/html; charset=UTF-8" />Salut,
J'utilise la plateforme de distribution pour analyser manuellement un ensemble de données, mais comme je vais devoir répéter, j'essaie maintenant de créer un script JSL pour extraire les mesures les plus importantes. Les données ressemblent à ceci :
Score du modèle
MODÈLE1 3.54485
MODÈLE2 2.36485
MODÈLE1 5.38456
MODÈLE2 2.14556
MODÈLE1 0
MODÈLE2 0,04856
Je voudrais extraire la moyenne, le développement standard, etc. mais j'aimerais aussi savoir à quelle fréquence le score est nul pour chaque modèle. J'ai essayé d'utiliser le résumé, la tabulation et quelques fonctions en JSL. Je peux tout accomplir sauf la partie « compter les zéros ». Je peux obtenir ce numéro manuellement en créant la distribution, puis en exécutant les options d'histogramme >> afficher les décomptes. Des idées sur la façon de le faire en JSL ? Code jusqu'à présent :
dt = Ouvrir("C:\Desktop\Results.jmp);
dt <
Groupe( :Modèle ),
Médiane( :score),
Score moyen ),
Dév. standard( :score),
Plage( :score),
);
Re : Compter le nombre de zéros dans une colonne (JSL)Merci! C'est beaucoup plus propre.
Re : Compter le nombre de zéros dans une colonne (JSL)Voici une version légèrement simplifiée qui devrait donner le même résultat.
dt = Ouvrir ( "C:\Bureau\results1" || nom de fichier || ".jmp" ) ;
dt2 = dt << Résumé ( Groupe ( : Modèle ) , Médian ( : score ) , Signifier ( : score ) , Gamme ( : score ) ) ;
dt2 << Supprimer des lignes ( 2 ) << Nouvelle colonne ( "Nombre de zéros" ,
Numérique ,
Continu ,
Format ( meilleur ) ,
<< définir chaque valeur ( N lignes ( dt << obtenir des lignes où ( : score == 0 & : Modèle == "Modèle1" ) ) )
) ;
Re : Compter le nombre de zéros dans une colonne (JSL)Merci! Je suis sûr que le code ci-dessous n'est pas optimal, mais j'ai pu incorporer votre code pour obtenir le résultat souhaité.
nom de fichier = "" ; /*nom général pour que je puisse le répéter pour différents fichiers*/
dt = Open("C:\Desktop\results1" || nom de fichier || ".jmp");
compteur_zéro = 0 ;
pour chaque ligne (
if(:score == 0 & :Model == "Model1", zero_count++)
);
dt <
Groupe( :Modèle ),
Médiane( :score),
Score moyen ),
Plage( :score),
);
dt2 = Table de données ( "results1" || nom de fichier || " Par (modèle)" );
dt2 << Supprimer les lignes (2); /*Je veux seulement le Modèle1 */
dt2 << Nouvelle colonne( "Num Zéros",
Numérique,
Continu,
Format(meilleur),
<
);
Re : Compter le nombre de zéros dans une colonne (JSL)Vous pouvez utiliser la commande summary et voir les décomptes en les regroupant par score :
Data Table("Untitled") << Summary(Group(:Score))
ou en jsl tu pourrais faire :
zero_count = 0;
for each row(
if(:score == 0, zero_count++)
);
show(zero_count);