Comment puis-je trouver la ligne et la colonne d’une valeur dans un tableau de données ?<meta http-equiv="Content-Type" content="text/html; charset=UTF-8" />Salut tout le monde,
J'ai besoin de trouver le numéro de colonne et de ligne d'une valeur particulière dans un tableau de données.Je sais comment rechercher une valeur dans une colonne particulière (c'est-à-dire row = dt1 << get rowswhere(:Device == "Device");) , qui renvoie le numéro de ligne, mais que se passe-t-il si je ne sais pas dans quelle rangée sera-t-il ?
Est-il possible de faire cela dans JMP ?Je vois comment le faire en allant modifier puis rechercher, mais existe-t-il un moyen de le faire en JSL ?
Re : Comment puis-je trouver la ligne et la colonne d'une valeur dans un tableau de données ?Merci, vos exemples sont toujours super !
Je sais que la valeur ne peut apparaître qu'une seule fois dans le fichier, j'ai donc créé une boucle while afin qu'elle ne continue pas à vérifier les autres colonnes.
fichier = Choisir un fichier ();
dt = Ouvrir (fichier);
pour(i=1, i<=ncols(dt), i++,
colonne (dt, i) << type de données (caractère);
column(dt,i) << définir le type de modélisation (continu) ;
);
nCols = dt << Obtenir les noms de colonnes ("Caractère");
trouvé =0 ;
chaîne_de recherche = "Vtlin" ;
je = 1 ;
Tandis que (trouvé == 0,
match_rows = dt << obtenir les lignes où (comme colonne (dt, nCols )==chaîne_de recherche);
if(nrows(match_rows) > 0, trouvé = 1, i++);
if(i==nCols, trouvé =1, );
);
vtlinCol = je;
Re : Comment puis-je trouver la ligne et la colonne d'une valeur dans un tableau de données ?Si vous recherchez du texte, cet exemple peut être utile :
dt = ouvrir ( "$sample_data\Bands Data.jmp" ) ;
char_cols = dt << obtenir les noms de colonnes ( Personnage , chaîne ) ;
chaîne_de recherche = "E310" ;
pour ( je = 1 , je <= articles ( char_cols ) , je ++,
match_rows = dt << obtenir des lignes où ( comme colonne ( dt , char_cols [ je ]) == chaîne_de recherche ) ;
je F ( nrows ( match_rows ) > 0 ,
imprimer ( "Colonne: [" || char_cols [ je ] || "] Lignes: " || carboniser ( match_rows )) ;
) ;
) ;