Übergeben von Argumenten an Python-Skripte in SPSS Modeler Batch

Übergeben von Argumenten an Python-Skripte in SPSS Modeler Batch

Was ist SPSS Modeler Batch?

CaDS wird für die regelmäßige Verarbeitung von mit SPSS Modeler erstellten Streams empfohlen. Wenn Sie jedoch keine so detaillierte Verwaltung benötigen oder der Umfang nicht groß ist, wird häufig auch SPSS Modeler Batch verwendet. Ich werde. SPSS Modeler Batch stellt eine Verbindung zum SPSS Modeler Server her und führt Streams durch Ausführen über einen Befehl aus. GUI wie SPSS Modeler Client startet nicht. Grundsätzlich werden alle im Stream platzierten Endknoten ausgeführt. SQL-Pushback und Cache, die im Stream festgelegt sind, funktionieren ebenfalls effektiv. Erstellen Sie als Beispiel für die Verwendung einen Stream, um diesen Prozess und den Batch-Befehl (clemb) von SPSS Modeler Batch auszuführen, wenn ein Prozess wie das tägliche Ausführen einer Umsatzprognose eines bestimmten Unternehmens oder das wöchentliche Aktualisieren des Prognosemodells vorhanden ist Kann durch Ausführen zur angegebenen Zeit von einem anderen Scheduler (z. B. CRON für UNIX) erreicht werden.

Befehlsbeispiel


clemb -stream "/XXX/.../XXX.str" -execute -server -hostname XXX -username XXX -password XXX -Pmth=Jan

Sie können Argumente mit der Option -P an den Stream übergeben, wenn Sie SPSS Modeler Batch ausführen. Wie im folgenden Handbuch gezeigt, schreiben Sie beispielsweise Month = '\ $ P-mth' in den Bedingungsextraktionsknoten und führen es mit dem Argument -Pmth = Jan aus, wenn Sie im Modelliererbatch mth ausführen = Jan wird in den Stream übertragen. Aus Month = '\ $ P-mth' wird Month = 'Jan', wodurch Sie nur die Daten extrahieren können, die Month = 'Jan' entsprechen. Es ist auch möglich, Daten unter verschiedenen Bedingungen wie Month = 'Feb' zu extrahieren, indem die Zeichenfolge nach -Pmth = in der Stapelausführung geändert wird.

"Parameter im Batch-Modus verwenden" (Im Handbuch lautet die Gleichung ==, entspricht jedoch =.)

Wenn Sie diese Methode verwenden und sie mit dem Filialnamen als Argument für einen Stream ausführen, können Sie auch Verkäufe prognostizieren und das Modell für jede Filiale aktualisieren.

Argumente in Python-Skripte einbinden

SPSS Modeler Batch führt alle Terminalknoten im angegebenen Stream wie oben beschrieben aus. Wenn Sie jedoch nur einen bestimmten Terminalknoten ausführen möchten, geben Sie die Reihenfolge an, in der die Terminalknoten ausgeführt werden, oder aktualisieren Sie das Modell. Wird vom zugehörigen Python-Skript gesteuert. Die im obigen manuellen Link gezeigte Methode bestand darin, die Argumente in den CLEM-Ausdruckssatz zu integrieren, der im Knoten des Streams festgelegt ist. Ich möchte jedoch auch vorstellen, wie die Argumente in das Python-Skript integriert werden, das dem Stream beiliegt. Wenn Sie beispielsweise den Zweigstellennamen mit der Option Zweig übergeben möchten, setzen Sie ihn wie unten gezeigt mit -PBranch =.

Beispiel für die Befehlseingabe


clemb -stream ...(Unterlassung)... -PBranch=GINZA

Verwenden Sie die Methode getParameterValue () der Instanz session () oder stream (), um sie in ein Python-Skript aufzunehmen. Der Unterschied besteht darin, dass stream () für den Ziel-Stream und session () für alle offenen Streams gültig ist, die von Modeler Batch erhaltenen Parameter jedoch entweder von session () oder stream () abgerufen werden. Ich kann es schaffen Schreiben Sie für session () und stream () diese in das Python-Skript, wie im folgenden Beispiel gezeigt.

session()Im Falle von


session = modeler.script.session()
Branch_Name = session.getParameters().getParameterValue('Branch')

stream()Im Falle von


stream = modeler.script.stream()
Branch_Name = stream.getParameterValue('Branch')

Wenn Sie den Stapel damit ausführen, wird der Variablen Branch_Name im vorherigen Beispiel "GINZA" zugewiesen. Danach können Sie frei damit umgehen, z. B. indem Sie es dem CLEM-Ausdruck des Knotens im Python-Skript zuweisen. Variablen werden als Zeichenfolgen importiert. Wenn Sie sie also als Zahlen behandeln möchten, müssen Sie eine Typkonvertierung wie int () durchführen.

Im folgenden Handbuch finden Sie auch eine Beschreibung zum Importieren von Parametern in Python-Skripte. (Es ist ein wenig verwirrend.)

"Streams, Sitzungen und Supernode-Parameter"

Recommended Posts

Übergeben von Argumenten an Python-Skripte in SPSS Modeler Batch
Wie bekomme ich Stacktrace in Python?
[Python / Tkinter] Übergeben von Argumenten an den Befehl
So führen Sie Maya Python-Skripte aus
So empfangen Sie Befehlszeilenargumente in Python
So löschen Sie einen Taple in einer Liste (Python)
Einbetten von Variablen in Python-Strings
Lassen Sie uns verstehen, wie Argumente übergeben werden (Python Edition)
So erstellen Sie eine JSON-Datei in Python
So benachrichtigen Sie Discord-Kanäle in Python
[Python] Wie zeichnet man mit Matplotlib ein Histogramm?
So übergeben Sie das Ergebnis der Ausführung eines Shell-Befehls in einer Liste in Python
So konvertieren / wiederherstellen Sie einen String mit [] in Python
[Python] So erweitern Sie Variablen in einer Zeichenfolge
Ein Memorandum zum Ausführen eines Python-Skripts in einer Bat-Datei
Verwalten von Argumenten beim Implementieren eines Python-Skripts als Befehlszeilentool
Führen Sie die Python-Funktion von Powershell aus (wie Sie Argumente übergeben).
Wie man in Python entwickelt
So führen Sie einen Befehl mit einem Unterprozess in Python aus
Übergeben von Argumenten beim Aufrufen von Python-Skripten über Blender in der Befehlszeile
So schneiden Sie ein Block-Multiple-Array aus einem Multiple-Array in Python
So führen Sie ein Python-Programm in einem Shell-Skript aus
Eine Geschichte darüber, wie man einen relativen Pfad in Python angibt.
Verwendung der Methode __call__ in der Python-Klasse
So starten Sie AWS Batch über die Python-Client-App
So importieren Sie Dateien in Python an eine beliebige Stelle
So definieren Sie mehrere Variablen in einer Python for-Anweisung
Ich habe versucht "Wie man eine Methode in Python dekoriert"
So entwickeln Sie in einer virtuellen Python-Umgebung [Memo]
So erhalten Sie den letzten (letzten) Wert in einer Liste in Python
So erhalten Sie eine Liste der integrierten Ausnahmen für Python
[Python] Wie man PCA mit Python macht
So sammeln Sie Bilder in Python
Verwendung von SQLite in Python
Wie man MySQL mit Python benutzt
So verpacken Sie C in Python
Verwendung von ChemSpider in Python
Verwendung von PubChem mit Python
Übergeben Sie Argumente in discord.py an Task
Umgang mit Japanisch mit Python
Schreiben Sie ein Batch-Skript mit Python3.5 ~
Übergeben des Ausführungsergebnisses eines Shell-Befehls in einer Liste in Python (nicht blockierende Version)
Starten eines mit Jupyter Notebook erstellten Python-Programms
So bestimmen Sie die Existenz eines Selenelements in Python
So machen Sie einen String in Python zu einem Array oder ein Array zu einem String
[Einführung in Python] So geben Sie eine Zeichenfolge in einer Print-Anweisung aus
So überprüfen Sie die Speichergröße einer Variablen in Python
So erhalten Sie eine Zeichenfolge aus einem Befehlszeilenargument in Python
[Einführung in Python] Wie verwende ich den Operator in in der for-Anweisung?
So überprüfen Sie die Speichergröße eines Wörterbuchs in Python
Ich habe eine Funktion zum Laden des Git-Erweiterungsskripts in Python geschrieben
Ich habe ein Skript geschrieben, um Webseiten-Links in Python zu extrahieren
So löschen Sie mehrere angegebene Positionen (Indizes) in einer Python-Liste
Dynamisches Definieren von Variablen in Python
[Python] Wie man eine Klasse iterierbar macht
So machen Sie R chartr () in Python