<meta http-equiv="Content-Type" content="text/html; charset=UTF-8" />Je souhaite créer une formule de colonne permanente qui sélectionnera automatiquement les lignes dans lesquelles deux colonnes contiennent les mêmes données.Utilisez ensuite cette sélection pour rechercher une valeur minimale dans une colonne des lignes sélectionnées.Je sais que je peux le faire avec une boucle for et un script, existe-t-il de toute façon d'intégrer simplement la commande "sélectionner les lignes correspondantes" dans une formule de colonne ?
Je ne suis pas sûr de comprendre, mais il semble que vous recherchiez le minimum d'une variable (par exemple hauteur ) par deux colonnes de regroupement (par exemple âge et âge2 ).
Ensuite, vous pouvez utiliser cette formule :
Col minimum ( : hauteur , : âge , : âge2 )
Votre état "... s'il n'y a pas de correspondance, ne répertoriez aucun minimum..." n'est pas clair pour moi et la formule ci-dessus renverrait toujours un minimum car il y aura au moins une "correspondance", c'est-à-dire la ligne elle-même. La formule ci-dessous doit renvoyer une valeur manquante au lieu du « minimum » s'il n'y a qu'une seule occurrence d'une combinaison de âge et âge2.
Si ( Numéro de colonne ( : hauteur , : âge , : âge2 ) > 1 ,
Col minimum ( : hauteur , : âge , : âge2 )
)
Byron,
Pas assez.J'ai besoin de savoir quand deux ensembles correspondent : Exemple :
Dans la ligne 1 - Âge = 12, Âge 2 = 13, montrez-moi toutes les autres lignes où Âge = 12 et Âge 2 = 13 dans la même ligne, et cela peut se produire 20 fois dans le tableau, donc sur ces 20 fois, choisissez la colonne minimum à partir de seulement ces 20 lignes.
Passez maintenant à la ligne 2 et effectuez la même comparaison pour ses valeurs. S'il n'y a aucune correspondance, ne répertoriez aucun minimum.
Essayez-vous de faire quelque chose comme ça ?
Dans ce cas, lorsque :age=:age2, j'obtiens une variable indicatrice. En utilisant col minimum(), je peux obtenir la taille minimale, par âge, par indicateur (mais seulement lorsque l'indicateur ne manque pas)
(exécutez ce script et jetez un œil aux formules du tableau)
dt = Open( "$SAMPLE_DATA/Big Class.jmp" );
dt << Nouvelle colonne( "âge 2",
Numérique,
"Continu",
Format( "Meilleur", 12 ),
Définir les valeurs (
[14, 12, 13, 13, 13, 14, 12, 15, 13, 12, 14, 14, 13, 15, 14, 12, 14, 15, 13, 13, 14, 15,
15, 15, 14, 15, 12, 15, 15, 15, 14, 13, 15, 15, 14, 15, 12, 14, 13, 13]
)
);
dt << Nouvelle colonne( "âge == âge 2",
Numérique,
"Nominal",
Format( "Meilleur", 12 ),
Formule( If( :age == :age 2, 1, . ) ),
Définir la sélection
);
dt << Nouvelle colonne( "hauteur minimale où age=age2",
Numérique,
"Nominal",
Format( "Meilleur", 12 ),
Formule(
Si (est manquant ( :Name ("age == age 2" ) ) == 0,
Col Minimum( :height, :age, :Name( "age == age 2" ) ),
.
)
)
);