Sélectionnez où et sous-ensemble en fonction de la valeur de la celluleSalut,
J'ai le morceau de code ci-dessous dans lequel je veux qu'il obtienne les noms de colonnes du fichier, puis crée une nouvelle table de sous-ensemble, suivie de la recherche de la moyenne et de l'écart-type de toutes les colonnes numériques. Le code Mean et SD fonctionne mais il ne crée pas du tout la table de sous-ensemble. Des idées? J'ai vérifié cela par rapport à toutes les discussions publiées. J'ai essayé les conditions Commence par et Contient
Voici le fichier exemple :
| Numéro de série |
Code |
Zone |
Hauteur |
Poids |
Âge |
| 1 |
55414 |
Minneapolis N |
|
|
|
| 2 |
55455 |
Minneapolis S |
|
|
|
| 3 |
4446804e |
Minneapolis-E |
|
|
|
| 4 |
4389568 |
Minneapolis F |
|
|
| 5 |
g58934 |
Saint-Paul N |
|
|
|
| 6 |
4989034 |
Saint-Paul E |
|
|
|
| 7 |
3496f |
De St Paul |
|
|
|
| 8 |
5404390sfd |
Minneapolis-E |
|
|
|
| 9 |
43960 |
Minneapolis N |
|
|
|
| dix |
569043 |
Saint-Paul N |
|
|
|
| 11 |
6590549 |
Saint-Paul E |
|
|
|
dt3 = Open( "file_28.jmp" );
colcmp = "Area";
col = dt3 << get column names( string );
nc = N Items( col );
Show( nc );
For( j = 1, j <= nc, j++,
colname = Column( j ) << Get Name;
Show( colname );
If( Contains( colname, colcmp ),
dt3 << Select Where( Starts With( :colname, "Minneapolis" ) );
dt3 << Subset( Output Table Name( "MPLS" ), Selected Rows( 1 ), Selected columns only( 0 ) );
dt3 << Select Where( Starts With( :colname, "St. Paul" ) );
dt3 << Subset( Output Table Name( "STP" ), Selected Rows( 1 ), Selected columns only( 0 ) );
);
);
dtPM = Data Table( "MPLS" );
a = "Numeric";
colPM = dtPM << get column names( string );
ncPM = N Items( colPM );
Show( ncPM );
For( k = 1, k <= ncPM, k++,
colname = Column( k ) << Get Name;
Show( colname );
which = dtPM:colname << Get Data Type;
Show( which );
If( Contains( which, a ),
count = count + 1;
colnames2[count] = colname || "_MPLS";
Mean1[count] = Col Mean( :Column( k ) );
Std1[count] = Col Std Dev( :Column( k ) );
Show( Mean1[count] );
);
);
Mélange et nettoyage des donnéesRe : Sélectionnez où et sous-ensemble en fonction de la valeur de la celluleMerci Jim. J'avais de la confusion sur la façon de passer des variables qui stockent les noms de colonne aux fonctions et je ne pouvais pas vraiment trouver d'exemples. Cela a effacé l'erreur.
Re : Sélectionnez où et sous-ensemble en fonction de la valeur de la celluleVous demandez à JMP de trouver une colonne nommée :colname.Dans cette référence, JMP n'évaluera pas la référence de colonne au-delà de :colname.Ce que vous devez faire, c'est spécifier le nom dans une fonction As Column().Alors ça marchera
For( j = 3, j <= nc, j++,
colname = Column( j ) << Get Name;
Show( colname );
If( Contains( colname, colcmp ),
dt3 << Select Where( Starts With( as column(colname), "Minneapolis" ) );
dt3 << Subset( Output Table Name( "MPLS" ), Selected Rows( 1 ), Selected columns only( 0 ) );
dt3 << Select Where( Starts With( as column(colname), "St. Paul" ) );
dt3 << Subset( Output Table Name( "STP" ), Selected Rows( 1 ), Selected columns only( 0 ) );
);
);