Ich suche Hilfe beim Extrahieren einer CSV-Datei, die in einer Zelle in einer Datentabelle gespeichert ist.Ich möchte ein Skript einrichten, um diese Spalte zu durchlaufen und entweder in eine neue Datentabelle zu extrahieren oder den Zelleninhalt als CSV-Datei zu speichern (die ich später als Datentabelle in JMP öffnen kann).Ich habe mir kurz den Text in den Spalten angesehen. In jeder Zelle sind jedoch so viele Daten enthalten, dass dieser Ansatz nicht praktikabel erscheint.Es gibt ungefähr 45 Zeilen und 5 Spalten mit Kopfdaten. Dann bestehen die Daten aus Tausenden von Zeilen und 46 Spalten.Alle Gedanken darüber, wie man damit umgeht, werden geschätzt!Lou

Hallo
Das habe ich getan:
Importieren Sie den Text und ersetzen Sie das Begrenzungszeichen, um ihn als Matrix zu analysieren (ich habe nur Zahlen, möglicherweise müssen Sie ihn so ändern, dass er eine Liste ist. Ersetzen Sie das ";" durch Leerzeichen und den Zeilenendeneintrag (könnte auch \ sein!). n oder \! cr) mit ",":
text_raw = column(dt,data_list[1])[1];
temp = Substitute( Substitute( text_raw, ";", " " ), "\!r", "," );// prepare for parsing
raw_data = Parse( Eval( "[" || temp || "]" ) ); // text to matrix
n_data = nitems(raw_data);
- Generieren Sie eine neue Tabelle mit allen benötigten Zeilen
- Fügen Sie die Anzahl der Zeilen der Matrix / Liste mit Addrows hinzu und füllen Sie den Contend aus. Möglicherweise nach Spalte der Liste mit einer zusätzlichen inneren Schleife
- Kopieren Sie Daten aus der Originaltabelle wie die Test-ID in alle Zeilen, damit Sie alle erforderlichen Konflikte haben.
Wiederholen Sie dies für jede Zeile aus der Originaltabelle.
Es kann etwas langsam sein und Sie können es beschleunigen, indem Sie im Voraus wissen, was Sie füllen werden (immer die gleiche Anzahl von Zeilen, die hinzugefügt werden müssen).
Es gibt möglicherweise einen direkten Weg von einer Rohtextzeichenfolge zur Datentabelle, aber ich konnte ihn nicht finden.
Eine andere Möglichkeit wäre, den Inhalt der Zeile als Textdatei zu speichern und mit dem Befehl open erneut zu importieren.
Dies ist möglicherweise einfacher zu codieren, kann jedoch länger dauern.