Hallo,
Beim Versuch, die Datenvisualisierung aus einer Datei zu automatisieren, wird nach der Eingabe dieser Codezeilen eine Fehlermeldung angezeigt
// Delete selected rows
dt( "Export" ) << select where(row() >= N Rows(dt) - 1;
dt << delete rows;
Hier möchte ich die letzten beiden Zeilen jeder Datei löschen, die ich öffne, unabhängig von ihrer Länge.
Wenn Sie helfen könnten, wäre das sehr dankbar:)
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
)
)
)
);
Hier ist die Fehlermeldung:
Unerwartetes Ende der Eingabe. Möglicherweise fehlt ein „“,“ oder „)“.
Es wird versucht, Argumente der Funktion „select where“ zu analysieren. Zeile 78, Spalte 3:);
Danke,
Julia
Wenn Sie solche Fehler sehen, kann es etwas schwierig sein, herauszufinden, wo das fehlende Komma oder der fehlende Klammer sein soll.
Eine Möglichkeit, dies herauszufinden, besteht darin, ein paar Zeilen über der Stelle zu beginnen, an der sich der Fehler befindet, und auf die "("s zu klicken. Wenn Sie auf den Abschnitt des Skripts doppelklicken, von dem JMP glaubt, dass er sich in der Klammer befindet, wird er hervorgehoben. Wenn die Klammer rot wird oder die Hervorhebung keinen Sinn ergibt, haben Sie das Problem gefunden.
Toll zu sehen, dass du den Action Recorder zum Automatisieren verwendest, nett.
-B
Ihnen fehlt ein ")" bei diesem select where()
// Delete selected rows
dt( "Export" ) << select where( Row() >= N Rows( dt ) - 1 );
dt << delete rows;