Bonjour,
En essayant d'automatiser la visualisation des données à partir d'un fichier, je rencontre un message d'erreur après avoir saisi ces lignes de code
// Delete selected rows
dt( "Export" ) << select where(row() >= N Rows(dt) - 1;
dt << delete rows;
Ici, je voudrais supprimer les 2 dernières lignes de chaque fichier que j'ouvre quelle que soit leur longueur.
Si vous pouviez aider, ce serait très apprécié:)
Names Default To Here(1);
dt=Open(
myPath = Pick File( "Select Excel File", "$DOCUMENTS", {"Excel Files|csv;xlsx;xls", "All Files|*"}, 1, 0 ),
Worksheets( "Export" ),
Use for all sheets( 1 ),
Concatenate Worksheets( 0 ),
Create Concatenation Column( 0 ),
Worksheet Settings(
1,
Has Column Headers( 1 ),
Number of Rows in Headers( 1 ),
Headers Start on Row( 2 ),
Data Starts on Row( 3 ),
Data Starts on Column( 1 ),
Data Ends on Row( 0 ),
Data Ends on Column( 0 ),
Replicated Spanned Rows( 1 ),
Replicated Spanned Headers( 0 ),
Suppress Hidden Rows( 1 ),
Suppress Hidden Columns( 1 ),
Suppress Empty Columns( 1 ),
Treat as Hierarchy( 0 ),
Multiple Series Stack( 0 ),
Import Cell Colors( 0 ),
Limit Column Detect( 0 ),
Column Separator String( "-" )
)
);
// Delete selected rows
dt( "Export" ) << select where(row() >= N Rows(dt) - 1;
dt << delete rows;
// Change column info: Result Id
dt( "Export" ):Result Id << Data Type( Character ) <<
Set Modeling Type( "Nominal" );
// Delete column: Statistics
dt( "Untitled 8" ) << Delete Columns( :Statistics );
// Change column info: %Area
dt( "Untitled 8" ):Column 6 << Set Name( "%Area" ) << Set Field Width( 3 );
// Change column name: Analysis Columns → Glycan Species
dt( "Untitled 8" ):Analysis Columns << Set Name( "Glycan Species" );
// Report snapshot: Untitled 8 - Graph Builder
dt( "Data analysis" ) << Graph Builder(
Size( 688, 586 ),
Variables( X( :Glycan Species ), Y( :"%Area"n ), Overlay( :SampleName ) ),
Elements( Bar( X, Y, Legend( 7 ) ) )
);
// Save data table: Data analysis.jmp
dt( "Untitled 8" ) << Save(path to work directory.jmp);
// Report snapshot: Export - Tabulate
dt( "Export" ) << Tabulate(
Add Table(
Row Table(
Grouping Columns( :Result Id, :SampleName, :Vial ),
Analysis Columns(
:Total alpha Gal, :Total beta Gal, :"G0-GN"n, :"G0f-GN"n, :G0,
:"G1-GN"n, :G0f, :M5, :"G1f-GN (a)"n, :"G1f (alpha 1,6)"n,
:"G1f (alpha 1,3)"n, :M6, :G2f, :"G1f+G (alpha 1,3)"n, :"G2f+G"n
)
)
)
);
Voici le message d'erreur:
Fin inattendue de l'entrée. Il manque peut-être un "," ou ")".
Essayer d'analyser les arguments de la fonction "sélectionner où" Ligne 78 Colonne 3
;
Merci,
Julia
Lorsque vous voyez des erreurs comme celle-ci, il peut être un peu difficile de déterminer où se trouve la virgule ou le parenthèse manquant.
Une façon de le comprendre est de commencer quelques lignes au-dessus de l'endroit où se trouve l'erreur et de commencer à cliquer sur les "(". Lorsque vous double-cliquez sur la section de script qui, selon JMP, se trouve entre les parenthèses, elle est mise en surbrillance. Si la parenthèse devient rouge ou si la surbrillance n'a pas de sens, vous avez trouvé le problème.
Génial de vous voir utiliser l'enregistreur d'action pour automatiser, sympa.
-B
Il vous manque un ")" sur ce select where()
// Delete selected rows
dt( "Export" ) << select where( Row() >= N Rows( dt ) - 1 );
dt << delete rows;