Teilmenge innerhalb einer Schleife verketten<meta http-equiv="Content-Type" content="text/html; charset=UTF-8" />Ich habe während jeder Iteration eine Schleife, in der ich eine Teilmenge von Zeilen auswähle.
Ich versuche, diese Zeilen zu verketten und dann nach dem Verlassen der Schleife die Liste der Zeilen anzuzeigen, die während jeder Schleife in einer Liste ausgewählt wurden.
Grundsätzlich habe ich folgendes:
Kohorte = {xxx, yyy, zzz};
for (i=1, i<= N Items (Kohorte), i++,
dt << Wählen Sie Wo( beginnt mit ( : Fach, Kohorte );
subCohort = dt << Subset( Ausgabetabellenname( "test" ), Ausgewählte Zeilen( 50 ), unsichtbar );
Freezerlist = concatenate (subCohorte);
);
show(freezerliste);
Von oben erhalte ich ein individuelles Fenster mit der Teilmengentabelle "test" für jede Iteration, aber ich kann sie nicht dazu bringen, sie in einer Liste zusammenzuführen.
Danke für jede Hilfe.
Avram
Betreff: Teilmenge innerhalb einer Schleife verkettenDanke - das funktioniert wunderbar!
Betreff: Teilmenge innerhalb einer Schleife verkettenEin bisschen bauen mscharf 's Antwort, vielleicht ist es das, was Sie suchen:
new = New Table( "FreezerList" ); // Erstellen Sie eine leere Tabelle;
Kohorte = {xxx, yyy, zzz};
For( i = 1, i <= N Items( Kohorte ), i++,
dt << Wählen Sie Wo( Beginnt mit( :Subjekt, Kohorte ), aktuelle Auswahl( "erweitern" ) );
subCohort = dt << Subset( Ausgabetabellenname( "test" ), Ausgewählte Zeilen( 1 ), unsichtbar );
new<< Concatenate(subCohort, Append to First Table);
Close( subCohorte, NoSave );
);
Betreff: Teilmenge innerhalb einer Schleife verkettenHier ist ein funktionierender Code, von dem ich glaube, dass er dem, was Sie wollen, nahe kommt ... Ich gehe davon aus, dass Sie die tatsächlichen Daten aus den ausgewählten Zeilen und nicht die Zeilennummern haben.
Namen standardmäßig hierher ( 1 ) ;
dt = Offen ( "$SAMPLE_DATA\Große Klasse.jmp" ) ;
// Ändern Sie den Spaltennamen "name" in "subject"", um dem Beispiel zu entsprechen
dt : Name << Name einsetzen ( "Gegenstand" ) ;
Kohorte = { "C" , "J" , "S" } ;
dt << Wählen Sie Wo aus ( Beginnt mit ( : Gegenstand , Kohorte[ 1 ] ) ) ;
baseDT = dt << Teilmenge ( Name der Ausgabetabelle ( "Prüfen" ) , ausgewählte Zeilen( 1 ) , ausgewählte Spalten( 0 ) ) ;
Für ( ich = 2 , ich <= N Artikel (Kohorte) , ich ++,
dt << Wählen Sie Wo aus ( Beginnt mit ( : Gegenstand , Kohorte ) ) ;
TempDT = dt << Teilmenge ( Name der Ausgabetabelle ( "Prüfen" ) , ausgewählte Zeilen ( 1 ) , ausgewählte Spalten( 0 ) ) ;
baseDT = baseDT << verketten (TempDT , An erste Tabelle anhängen ( 1 ) ) ;
Nah dran (TempDT , nosave ) ;
) ;
Gefrierliste = baseDT : Gegenstand <
Show (Gefrierliste) ;
Betreff: Teilmenge innerhalb einer Schleife verkettenEs tut uns leid ...
In Worten, was ich versuche zu tun, ist eine Schleife zu verwenden, um eine lange Tabelle für Zeilen zu lesen, die nach einem bestimmten Präfix (das sich bei jeder Schleife ändert) und mehreren anderen Kriterien (die statisch sind) suchen.
Bei jedem Durchlauf durch die Schleife werden bestimmte Reihen identifiziert.
Das Präfix, nach dem gesucht wird, ändert sich mit jeder Iteration, aber die anderen Kriterien bleiben gleich.
Ich möchte eine einzelne Liste (genannt Freezerlist) erstellen, die die in jeder Schleife identifizierten Zeilen enthält.
Vielen Dank
Betreff: Teilmenge innerhalb einer Schleife verkettenDas ist verwirrend, ich bin mir nicht sicher, was Sie versuchen zu tun. (freezerlist = concatenate(subCohort)) macht keinen Sinn, und ich kann weder Kopf noch Zahl machen, da ich nicht weiß, was Freezerlist ist.Ich vermute, dass es sich um eine Datentabelle handelt.
Schleifen Sie durch, erstellen Sie Teilmengen und versuchen Sie dann, diese Teilmengen zu verketten?In diesem Fall möchte ich wissen, warum Sie nicht alles auf einmal machen und nur eine Teilmenge erstellen?
Kohorte = { xxx , yyy , zzz } ;
Pro ( ich = 1 , ich <= N Artikel ( Kohorte ) , ich ++,
dt << Wählen Sie Wo aus ( beginnt mit ( : Gegenstand , Kohorte [ ich ]) , aktuelle Auswahl ( "verlängern" )) ;
) ;
Unterkohorte = dt << Teilmenge ( Name der Ausgabetabelle ( "Prüfung" ) , Ausgewählte Zeilen ( 1 ) , unsichtbar ) ;
Gefrierliste = dt << Ausgewählte Spalten abrufen ;
Show ( Gefrierliste ) ;
Hinweis: Sie können Zeichenfolgen, Listen, Matrizen und Datentabellen verketten.
Konkat ( Zeichenfolge1 , Zeichenfolge2 ) ;
Konkat ( Matrix1 , Matrix2 ) ;
Datentabelle1 << Verketten ( Datentabelle2 ) ;