Ausführen von R-Skripts mit der Minitab Statistical Software

Hier erfahren Sie mehr über die verschiedenen Möglichkeiten, wie Sie R aus Minitab ausführen.
Es gibt drei Methoden, um R-Skripts aus Minitab auszuführen:
  • Führen Sie den Befehl RSCR im Fensterbereich Befehlszeile aus.
  • Führen Sie eine Minitab-Exec aus, die den Befehl RSCR enthält.
  • Passen Sie die Minitab-Benutzeroberfläche an, um eine Minitab-Exec auszuführen, die den Befehl RSCR enthält.

Der Befehl RSCR erweitert die Funktionalität von Minitab mit R, verwandelt Minitab jedoch nicht in eine interaktive R-Umgebung. Verwenden Sie Minitab daher nur mit R-Skripten, die ohne Interaktion abgeschlossen werden. Beispielsweise funktioniert die Funktion readline(), die Eingaben von der Tastatur akzeptiert, während ein Skript ausgeführt wird, in Minitab nicht. Interaktivität in R nimmt viele andere Formen an, z. B. plot() und hist().

Weitere Informationen zum R-Paket von Minitab, darunter R-Codebeispiele, finden Sie unter R API-Referenz.

Alle Dateien, auf die in diesem Handbuch verwiesen wird, sind in dieser .ZIP-Datei verfügbar: r_guide_files.zip.

Hinweis

Installieren und führen Sie R aus, bevor Sie versuchen, R in Minitab Statistical Software zu integrieren. Wenden Sie sich an den technischen Support Ihrer Organisation, um Unterstützung bei der Installation von R zu erhalten. Der technische Support von Minitab kann Sie bei der Installation von R nicht unterstützen.

Ausführen von R-Skripts aus dem Fensterbereich Befehlszeile

Sie können den Befehl RSCR im Fensterbereich Befehlszeile ausführen. Allgemeine Informationen zum Fensterbereich Befehlszeile finden Sie unter Befehlszeile/Verlaufsfenster. Allgemeine Informationen zur Verwendung von Sessionbefehlen finden Sie in der Hilfe zu Sessionbefehlen.

RSCR["filename.R"]["Args"...]

Führt das von Ihnen angegebene R-Skript aus.

Die Standarddateierweiterung für R-Skripts lautet .R. Wenn die Dateierweiterung .R lautet, müssen Sie die Dateierweiterung nicht eingeben. Minitab sucht im Standardordner nach R-Skripts, wenn Sie keinen Dateipfad angeben. Der Standardspeicherort des Ordners hängt von Ihrem Betriebssystem ab. Weitere Informationen finden Sie unter Standardordner für R-Dateien für Minitab.

Das optionale Argument Args ermöglicht Ihnen das Übergeben von Argumenten an das R-Skript über commandArgs(trailingOnly = TRUE). Args kann beliebige Textwerte umfassen, die jeweils durch ein Leerzeichen getrennt sind. Schließen Sie Argumente in Anführungszeichen ein. Der Standardwert ist None, was bedeutet, dass das Skript keine Argumente erhält.

Im Allgemeinen verwenden Sie Argumente, um Daten aus Minitab an R zu übertragen. Sie können Argumente auf verschiedene Arten eingeben. Sie können z. B. Argumente verwenden, die Bezeichner für Spalten, Matrizen oder Konstanten sind:

Minitab-Sessionbefehl Wert in R Verwendung
RSCR "test.R" "C1"
"C1"
Verwenden Sie die folgende Funktion, um die Spalte abzurufen:
mtbr::mtb_get_column(commandArgs(trailingOnly = TRUE)[1])
RSCR "test.R" "M1"
"M1"
Verwenden Sie die folgende Funktion, um die Matrix abzurufen:
mtbr::mtb_get_matrix(commandArgs(trailingOnly = TRUE)[1])
RSCR "test.R" "K1"
"K1"
Verwenden Sie die folgende Funktion, um die Konstante abzurufen:
mtbr::mtb_get_constant(commandArgs(trailingOnly = TRUE)[1])

Sie können auch Argumente verwenden, die Namen von Spalten, Matrizen oder Konstanten in Minitab sind:

Minitab-Sessionbefehl Wert in R Verwendung
RSCR "test.R" "My Column"
"My Column"
Verwenden Sie die folgende Funktion, um die Spalte abzurufen:
mtbr::mtb_get_column(commandArgs(trailingOnly = TRUE)[1])
RSCR "test.R" "My Matrix"
"My Matrix"
Verwenden Sie die folgende Funktion, um die Matrix abzurufen:
mtbr::mtb_get_matrix(commandArgs(trailingOnly = TRUE)[1])
RSCR "test.R" "My Constant"
"My Constant"
Verwenden Sie die folgende Funktion, um die Konstante abzurufen:
mtbr::mtb_get_constant(commandArgs(trailingOnly = TRUE)[1])

Sie können außerdem Argumente angeben, um Zeichenfolgen zu übergeben, die in Ihrem R-Code verwendet werden sollen. Sie können eine Zeichenfolge direkt oder in einer Konstante übergeben.

Minitab-Sessionbefehl Wert in R Verwendung
RSCR "test.R" "Text not Stored"
"Text not Stored"
In diesem Fall wurde ein Wert übergeben, der nicht mit einem mtbr-„get“-Befehl verwendet werden kann. Args sind jedoch nicht nur auf das Übergeben von Spalten, Matrizen und Konstanten beschränkt.
LET K1 = "Text in Constant" RSCR "test.R" K1
"Text in Constant"
In diesem Beispiel wird gezeigt, dass RSCR zwar keine Argumente akzeptiert, die keine Textwerte sind, Sie jedoch eine Konstante an RSCR übergeben können, sofern die Konstante als Textwert definiert ist.

Wenn Sie mehr als ein Argument übergeben, können Sie über die Liste der Argumente der Reihe nach auf die Argumente zugreifen:

Minitab-Sessionbefehl Wert in R Verwendung
RSCR "test.R" "C1" "C2" "M1" "K3" "10"
"C1" "C2" "M1" "K3" "10"
Dies ist ein Beispiel für das Übergeben mehrererArgs, wobei Sie mit Hilfe der folgenden Funktionen in R darauf zugreifen:
mtbr::mtb_get_column(commandArgs(trailingOnly = TRUE)[1]) mtbr::mtb_get_column(commandArgs(trailingOnly = TRUE)[2]) mtbr::mtb_get_matrix(commandArgs(trailingOnly = TRUE)[3]) mtbr::mtb_get_constant(commandArgs(trailingOnly = TRUE)[4]) as.numeric(commandArgs(trailingOnly = TRUE)[5])

Verwenden Sie die folgende Datei, um die Ausgabe aus dem Beispieltext für die folgenden Unterbefehle anzuzeigen. Stellen Sie sicher, dass sich die Datei test.R im Minitab-Ordner für R-Skripts befindet.
Datei Beschreibung
test.R Ein R-Beispielskript, das in diesem Handbuch verwendet wird. Wenn Sie Argumente an das Skript übergeben, enthalten die Ergebnisse eine Liste mit den Werten der Argumente. Wenn Sie das Skript mit dem Argument „ArgToBePrintedToStdErr“ ausführen, schreibt das Skript den Namen des Arguments in die Datei „stderr“. Wenn Sie das Skript mit dem Argument „ArgToBePrintedToStdOut“ ausführen, schreibt das Skript den Namen des Arguments in die Datei „stdout“. Verwenden Sie die folgenden Unterbefehle, um zu steuern, ob der Inhalt dieser Dateien im Minitab-Ausgabefenster angezeigt wird.
NOSERR
Gibt an, dass im Minitab-Ausgabefenster kein Text aus der Standard-Fehlerkonsolenausgabe (message(), warning() oder stop()) angezeigt wird. In der „warning“-Konsolenausgabe werden R -Fehlermeldungen angezeigt, wenn Sie Ihren Code in einer integrierten R -Entwicklungsumgebung ausführen. In R ist es jedoch auch möglich, andere Ergebnisse in der Datei „warning“ auszugeben. Als Beispiel gilt standardmäßig:
RSCR "test.R" "ArgToBePrintedToStdErr". 
Erzeugt die folgenden Ergebnisse, die die „warning“-Konsolenausgabe enthalten:

R Script

These results are from external software.
The following arguments were passed to R: ArgToBePrintedToStdErr

R standard error

The following arguments were printed to Stderr: 'ArgToBePrintedToStdErr'
Die folgenden Sessionbefehle schließen die „warning“-Konsolenausgabe aus:
RSCR "test.R" "ArgToBePrintedToStdErr"; NOSERR.
Die Sessionbefehle erzeugen die folgenden Ergebnisse:

R Script

These results are from external software.
The following arguments were passed to R: ArgToBePrintedToStdErr
SOUT
Gibt an, dass Text aus der Standardkonsolenausgabe (print()) im Minitab-Ausgabefenster angezeigt wird. In der Standardkonsolenausgabe werden die Ergebnisse von Befehlen wie print() in einer integrierten R-Entwicklungsumgebung angezeigt. Als Beispiel gilt standardmäßig:
RSCR "test.R" "ArgToBePrintedToStdOut". 
Erzeugt die folgenden Ergebnisse, die die Konsolenausgabe ausschließen:

R Script

These results are from external software.
The following arguments were passed to R: ArgToBePrintedToStdOut
Die folgenden Sessionbefehle schließen die Konsolenausgabe ein:
RSCR "test.R" "ArgToBePrintedToStdOut"; SOUT.
Die Sessionbefehle erzeugen die folgenden Ergebnisse:

R Script

These results are from external software.
The following arguments were passed to R: ArgToBePrintedToStdOut

R standard output

[1] "The following arguments were printed to Stdout: 'ArgToBePrintedToStdOut'"

Ausführen von R-Skripts aus einer Minitab-Exec-Datei

Verwenden Sie die folgende Datei, um das Verfahren in diesem Abschnitt auszuführen:
Datei Beschreibung
test.R Ein R-Beispielskript, das in diesem Handbuch verwendet wird. Wenn Sie Argumente an das Skript übergeben, enthalten die Ergebnisse eine Liste mit den Werten der Argumente.
REXEC.MTB Eine Minitab-Exec-Beispieldatei, die die Sessionbefehle zum Ausführen des Skripts test.R mit 2 Argumenten enthält.

Execs sind Textdateien, die Minitab-Sessionbefehle enthalten. Sie können den Befehl RSCR, der R ausführt, in eine Minitab-Exec aufnehmen. Mit Exec-Dateien können Sie Befehle einfach ausführen, ohne sie jeweils erneut eingeben zu müssen, und Sie können die Exec einer benutzerspezifischen Schaltfläche in Minitab zuordnen. Weitere Informationen zu Minitab-Execs finden Sie in der Minitab-Hilfe zu Makros. Um eine Exec auszuführen, wählen Sie Datei > Exec ausführen aus.

Angenommen, Sie erstellen die Exec REXEC.MTB. Die Exec-Datei enthält den folgenden Minitab-Befehl:
RSCR "test.R" "Arg1" "Arg2"
Führen Sie die folgenden Schritte aus, um das R-Skript mit der Exec auszuführen:
  1. Wählen Sie Datei > Exec ausführen aus.
  2. Klicken Sie auf Datei auswählen.
  3. Wählen Sie REXEC.MTB aus.
  4. Klicken Sie auf Öffnen.
Das Skript zeigt die Werte der Argumente in Minitab an, und die Exec erzeugt die folgenden Ergebnisse:

R Script

These results are from external software.
The following arguments were passed to R: Arg1, Arg2

Ausführen von R-Skripts über die Minitab-Benutzeroberfläche

Wenn Sie über eine Minitab-Exec-Datei verfügen, können Sie eine benutzerspezifische Schaltfläche oder ein Menü erstellen, mit der bzw. dem die Exec ausgeführt wird. Allgemeine Informationen zum Anpassen der Benutzeroberfläche in Minitab finden Sie unter Anpassen der Menüs, Symbolleisten und Tastenkombinationen.

Sie können folgendermaßen verfahren, um eine benutzerspezifische Schaltfläche zu erstellen, die eine Exec ausführt:
  1. Wählen Sie Ansicht > Anpassen aus.
  2. Klicken Sie auf die Registerkarte Extras.
  3. Klicken Sie auf der Registerkarte Extras auf die Schaltfläche Neu (einfügen).
  4. Geben Sie einen Namen für den Befehl ein, und drücken Sie dann die Eingabetaste.
  5. Klicken Sie auf die Schaltfläche Öffnen.
  6. Wählen Sie in der Dropdown-Liste „Dateityp“ die Option Alle Dateien (*.*) aus.
  7. Navigieren Sie zu einer Exec-Datei, und wählen Sie sie aus.
  8. Klicken Sie auf Öffnen.
  9. Wählen Sie erneut Ansicht > Anpassen aus.
  10. Wählen Sie auf der Registerkarte Befehle unter Kategorien die Option Extras aus.
  11. Während das Dialogfeld Anpassen geöffnet ist, ziehen Sie den neuen Befehl an die Stelle, an der er im Minitab-Menü oder auf der Symbolleiste angezeigt werden soll.
  12. Klicken Sie auf Schließen.

Zusätzlich zu den Funktionen zum Anpassen der Minitab-Benutzeroberfläche können Sie eine COM-kompatible Sprache verwenden, um benutzerspezifische Dialogfelder und Analysen zu erstellen. Informationen zum Anpassen von Minitab über COM finden Sie unter Minitab-Automatisierung.

Anhalten des Befehls RSCR

Sie können ein R-Skript anhalten und Minitab geöffnet halten. So wird verhindert, dass Änderungen an Ihrem Minitab-Projekt seit dem letzten Speichern verloren gehen. Die Methode zum Anhalten eines R-Skripts hängt von Ihrem Betriebssystem ab.
Windows

Drücken Sie Strg + Alt + Entf, um den Windows-Task-Manager zu öffnen. Beenden Sie dann den R-Prozess.