Scripteur JSL débutant ici...
Je souhaite créer un script qui supprimera toutes les lignes contenant des données manquantes dans n'importe quelle colonne.À l'heure actuelle, si je renomme la ou les colonnes, cela fonctionnera comme ceci :
clean_dt << selectWhere(IsMissing ( :THK ) ) << supprimerLignes ;
Le problème est que je veux que ce script soit dynamique et puisse gérer n'importe quel nom pour n'importe quelle colonne que je lui donne et le référencer par numéro de colonne par exemple. Disons que le nom de la colonne est complexe comme ceci
Étape : :Mesure : :Données : :THK :Brut (moyenne)
Je ne veux pas avoir à renommer mes colonnes à chaque fois... J'ai essayé plusieurs itérations de choses qui, selon moi, "devraient" fonctionner, mais elles ne sont pas telles que
clean_dt << selectWhere(IsMissing( Colonne(8) )) << supprimerLignes ;
OU
clean_dt << selectWhere(IsMissing( : Etape ::Données ::THK:Brut (Moyenne) )) << supprimerLignes ; (le nom de la colonne est trop complexe avec des caractères spéciaux)
Chaque fois qu'il se trompe avec ce message
l'argument doit être numérique{1} dans l'accès ou l'évaluation de 'Is Missing' , Is Missing/*###*/(Column( 8 ))
Lors de l'utilisation du message Sélectionner où, les critères doivent être basés sur la ligne actuelle, car JMP examine chaque ligne pour voir si la ligne répond aux critères.
Étant donné que la fonction Column renvoie en fait une référence à la colonne entière, lorsque vous utilisez la fonction Column dans votre message Select Where, vous devez inclure un indice à la ligne actuelle. Cela peut être fait en inscrivant [Row()] ou simplement [] pour faire court. Voir ci-dessous.
dt << Select where( Is Missing( Column( 8 )[] ) );
Lorsque vous souhaitez utiliser un nom de colonne avec des caractères spéciaux, vous pouvez utiliser l'analyseur de nom avec une chaîne du nom de la colonne. Si cette chaîne doit être une variable, vous devrez utiliser la fonction Colonne à la place.
dt << Select Where( Is Missing( :Name( "Step::Data::THK:Raw (Mean)" ) ) );
OU
str = "Step::Data::THK:Raw (Mean)";
dt << Select Where( Is Missing( Column( str )[] ) );