Minitab 22 - Strings teilen
- Überarbeitet am 15.5.2024
- Software: Minitab 22, 21, 20, 19, 18, 17
Wie extrahiert man aus einer Textspalte bestimmte Teile, um diese in andere Spalten zu kopieren?
Erläuterung
Der Minitab-Rechner bietet einige Funktionen zum Bearbeiten von Textelementen. So können zum Beispiel mit dem Rechner-Befehl Left(C1;4) die ersten vier Zeichen aus dem Text in der Spalte C1 extrahiert werden. Der neue String wird dabei in die Ausgabespalte gespeichert. Eine spezielle Funktion zur Stringmanipulation mit mehreren Ausgabespalten ist in Minitab zurzeit nicht implementiert.
Jedoch hilft hier ein Trick:
Die betreffende Spalte wird in eine ASCII Datei exportiert und nur die benötigten Teile werden gezielt wieder eingelesen.
Beispiel 1
Folgendes Beispielmakro macht aus der Spalte C1 die Spalten C2 und C3:
Write C1;
File "Beispiel1.txt".
Read C2 C3;
File "Beispiel1.txt";
Format (A3;F4).
↓ | C1-T | C2-T | C3 |
1 | red1234 | red | 1234 |
2 | red1235 | red | 1235 |
3 | red1235 | red | 1235 |
Mit dieser Notation können beliebige Stringzerlegungen anhand der Minitab Syntax von Formatzuweisungen vorgenommen werden. Diese kann im Kapitel Valid Format Items der Minitab-Hilfe zu Sessionbefehlen nachgeschlagen werden.
Beispiel 2: Überschriften in der ersten Spalte
Im zweiten Beispiel enthält die Spalte C1 in der ersten Zeile zusätzlich die Spaltennamen, die die Ausgabespalten haben sollen. Die folgenden Befehlszeilen führen zusätzlich zum Teilen der Strings auch die Spaltenbenennungen durch. Der Unterbefehl NObs legt dabei die Anzahl der einzulesenden Zeilen fest, und der Unterbefehle Skip die Anzahl der zu überspringenden Zeilen.
Write C1;
File "Beispiel2.txt".
Read C2 C3;
File "Beispiel2.txt";
NObs 1;
Format (A2;A2).
Stack C2 C3 C4.
Copy C4 K1 K2.
Erase C2-C4.
Read C2 C3;
File "Beispiel2.txt";
Skip 1;
Format (A3;F4).
Name C2 K1 C3 K2.
Erase K1 K2.
↓ | C1-T | C2-T | C3 |
x1 | x2 | ||
1 | x1x2 | red | 1234 |
2 | red1234 | red | 1235 |
3 | red1235 | red | 1235 |
4 | red1235 |
Anmerkung
Wenn Sie wissen wollen, in welchem Verzeichnis die Dateien Beispiel1.txt bzw. Beispiel2.txt abgespeichert werden, können Sie sich diesen mit dem Befehl CD (ohne Eingabe eines Pfades) anzeigen lassen. Wenn die Dateien in einem bestimmten auf dem Rechner vorhandenen Verzeichnis festgelegt werden sollen, können Sie diesen vor dem Ausführen der obigen Befehlszeilen hinter dem Befehl CD angeben. Ist beispielsweise das Verzeichnis C:\Temp auf Ihrem Rechner vorhanden, und sollen die Dateien dort abgelegt werden, können Sie dies mit dem Befehl
CD C:\Temp
festlegen.
|