So erstellen Sie ein Skript zum Importieren von XLS in JMPIch habe ein Problem beim Importieren einer XLS-Datei in JMP mithilfe eines Skripts
Ich möchte diese Datei mit Zeile „7“ als Kopfzeile importieren und die Fülldaten der neuen Spalte „Los-ID“ als B3-Zellendaten (B6C141-02B5) in die neue Spalte einfügen
Wie kann ich das machen
Danke

Automatisierung und SkripterstellungVerbraucher- und MarktforschungDatenzugriffBetreff: So erstellen Sie ein Skript zum Importieren von XLS in JMPWie sowohl txNelson als auch Ian erwähnt haben, verfügt Ihre Datentabelle nicht über ein wirklich gutes Format für eine statistische Analyse. Dies ist jedoch in der Industrie leider häufig der Fall, insbesondere wenn hauptsächlich Tabellenkalkulationstools verwendet werden. Statistische Daten sollten nach Möglichkeit in Spalten und Zeilen in rechteckiger Form vorliegen. Andernfalls müssen Sie jede Zelle für die Berechnung angeben, anstatt Vektoren und Matrizen zu verwenden, was viel effizienter wäre. Deshalb importierte txNelson das Blatt zweimal und extrahierte die Informationen, wie Ian es auf ähnliche Weise tat.
Vor einiger Zeit hatte ich eine Entdeckungspräsentation über Tipps zum Importieren von Daten aus Excel, von der ich glaube, dass sie immer noch gilt: Häufige Fallstricke bei der Arbeit mit Excel-Daten in JMP umgehen (JMP Discovery Summit Europe 2016)
Außerdem habe ich einige Blogs über den Import aus Excel geschrieben. Andere Fälle als Ihrer, aber vielleicht für andere Situationen nützlich:
Blogs von Martin über Excel und JMP
Betreff: So erstellen Sie ein Skript zum Importieren von XLS in JMPIch denke, Sie müssen ein wenig JSL kennen, und das sollte Ihnen den Einstieg erleichtern. Der „beste“ Ansatz wird dadurch bestimmt, was Sie über die Struktur der Daten über das von Ihnen gegebene Beispiel hinaus annehmen können (und was nicht).
Dieser Code ist überhaupt nicht robust und geht davon aus, dass sich Ihre Datei im Ordner „Downloads“ befindet. Wenn Sie sich „Hilfe > Bücher > Skripthandbuch“ ansehen, können Sie wahrscheinlich herausfinden, was es tut (abhängig davon, wie viel Programmiererfahrung Sie haben).
NamesDefaultToHere(1);
dt = Open("$DOWNLOADS/test_import.xlsx");
lid = Column(dt, 2)[2];
colNames = {};
InsertInto(colNames, Column(dt, 1)[11]);
InsertInto(colNames, Column(dt, 2)[11]);
InsertInto(colNames, Column(dt, 3)[7]);
InsertInto(colNames, Column(dt, 4)[7]);
InsertInto(colNames, Column(dt, 5)[7]);
InsertInto(colNames, Column(dt, 6)[7]);
InsertInto(colNames, Column(dt, 1)[2]);
dt << deleteRows(1::11);
for(c=1, c<=NItems(colNames), c++, Column(dt, c) << setName(colNames[c]));
Column(dt, colNames[NItems(colNames)]) << setValues(Repeat(lid, NRows(dt)));
dt << setName("Data for lot "||lid);Betreff: So erstellen Sie ein Skript zum Importieren von XLS in JMPHier ist das Skript zur Eingabe Ihrer Daten
Ich habe die Datei mit dem JMP-Excel-Assistenten interaktiv geöffnet und dann das von JMP erstellte Quellskript kopiert, um es in das Skript einzufügen.Das Skript liest die Datei zweimal ein.Zuerst zum Einlesen der Daten und dann zum zweiten Mal zum Einlesen der Chargen-ID.Ich habe dann einfach den Code hinzugefügt, mit dem Sie die zu importierende Excel-Datei auswählen können, sowie die JSL, die zum Erstellen der neuen Spalte „Los-ID“ erforderlich ist.
names default to here(1);
path = Pick File();
dt = Open(
path,
Worksheets( "Sheet1" ),
Use for all sheets( 1 ),
Concatenate Worksheets( 0 ),
Create Concatenation Column( 0 ),
Worksheet Settings(
1,
Has Column Headers( 1 ),
Number of Rows in Headers( 7 ),
Headers Start on Row( 6 ),
Data Starts on Row( 13 ),
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( "-" )
)
);
dtLotID = Open(
path,
Worksheets( "Sheet1" ),
Use for all sheets( 1 ),
Concatenate Worksheets( 0 ),
Create Concatenation Column( 0 ),
Worksheet Settings(
1,
Has Column Headers( 0 ),
Number of Rows in Headers( 7 ),
Headers Start on Row( 6 ),
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( "-" )
)
);
lotID = dtLotID:Column 2[1];
close(dtLotID, nosave );
dt << New Column("Lot ID", Character, set each value(lotID));