Wie ordne ich einen Teil des Textes in zwei Spalten zu?Hallo zusammen, ich möchte eine Frage zu diesem Datensatz stellen
| AUSWEIS | Spalte A | Spalte B | Spalte C
| Spalte D |
| 1 | A*05:01 A*25:01 B*08:01 B*39:01 C*05:01 C*07:06 C*07:18 C*12:03 DRB1*05:01 DRB1*07:01 DRB3*01:01 DRB4*09:03N DQA1*02:01 DQA1*05:01 DQB1*02:01 DQB1*02:02 | DQA1*01-03,DQB1*06-03_DQ6 | | |
| 2 | A*20:01 A*60:02 B*08:01 B*28:03 C*02:02 C*03:04 DRB1*01:02 DRB1*13:04 DRB3*02:02 DRB3*02:02 DQA1*01:01 DQA1*01:04 DQA1*01:05 DQA1*05:05 DQA1*05:09 DQB1*02:01 DQB1*05:01 | DQA1*05-01,DQB1*02-01_DQ2 | | |
| 3 | A*01:01 A*01:01 B*08:01 B*38:01 C*06:02 C*09:01 C*07:06 C*07:18 DRB1*07:01 DRB1*07:01 DRB4*01:01 DRB4*01:03 DRB4*01:05N DQA1*02:01 DQA1*02:01 DQB1*02:02 DQB1*03:03 | DQA1*03-03,DQB1*04-01_DQ4 | | |
| 4.... | A*01:01 A*01:01 B*08:01 B*38:01 C*06:02 C*09:01 C*07:06 C*07:18 DRB1*07:01 DRB1*07:01 DRB4*01:01 DRB4*01:03 DRB4*01:05N DQA1*02:01 DQA1*03:03 DQB1*02:02 DQB1*03:03 | DQA1*03-03 ,DQB1*04-01_DQ4 | DQA1*02:01 DQA1*03:03 DQB1*02:02 DQB1*03:03 | DQA1*03:03 |
F1: Wie kann ich vorgehen? Ich möchte nur den Text DQA1... und DQB1... in Spalte A in Spalte C extrahieren.
F2: Wie kann ich vorgehen? Ich möchte den Auszugstext in Spalte B und Spalte C in derselben Zeile in Spalte D abgleichen
Ich versuche, den Regex-Befehl zu verwenden, aber das Problem tritt bei * und : auf, und ich habe keine Ahnung, wie ich einen Teil des Textes mit zwei Spalten in mehreren IDs abgleichen soll ...
Ich habe das, was ich will, in die ID 4 eingefügt. In diesem Fall sind: und - gleich.
Danke im Voraus für Ihre Hilfe!
Grundlegende Datenanalyse und ModellierungMac OSBetreff: Wie ordne ich einen Teil des Textes in zwei Spalten zu?Für Spalte D könnten Sie Words(), Substitute() und Associative Array() + Intersect in einer Formel verwenden, um genaue Übereinstimmungen zu finden
aa1 = Associative Array(Words(:Column B, ","));
aa2 = Associative Array(Words(Substitute(:Column C, ":", "-"), " \!N"));
aa1 << Intersect(aa2);
Concat Items(aa1 << Get Keys, ",");
Für Spalte C können Sie gute Ideen von Regex erhalten: Es können nicht alle Teile der Zeichenfolge gefunden werden, die übereinstimmen
Bearbeiten:
Hier ist eine Option für Spalte C, die funktionieren könnte. Wenn Sie nicht verstehen, was es tut, empfehle ich die Verwendung von While-Schleifen und Regex, da diese im Allgemeinen einfacher zu verstehen sind als der Mustervergleich von JMP.
result = {};
Pat Match(
:Column A,
Pat Repeat(
(Pat Regex("(DQ[AB]1.+)[\s$]") >> result)
|
Pat Len(1)
)
);
Concat Items(Words(result, " "), ", ");

Betreff: Wie kann man einen Textabschnitt in zwei Spalten abgleichen?Öffnen Sie die Tabelle und sehen Sie sich die Formeln in Spalte C und Spalte D an (beide enthalten Formeln).

Wenn Sie nicht sicher sind, wie Sie Formeln in JMP erstellen, besuchen Sie die JMP-Hilfeseite https://www.jmp.com/support/help/en/17.2/#page/jmp/create-formulas-in-jmp.shtml#