Betreff: [JSL-Fehler] Alle geöffneten Tabellen zu einer Tabelle verketten und alle schließenVielen Dank! das ist, wonach ich sucheBetreff: [JSL-Fehler] Alle geöffneten Tabellen zu einer Tabelle verketten und alle schließenDas ist großartig, danke Jim.
Betreff: [JSL-Fehler] Alle geöffneten Tabellen zu einer Tabelle verketten und alle schließenHoppla, Entschuldigung Jim, @txnelson , ich habe deine Antwort nicht gesehen.
Betreff: [JSL-Fehler] Alle geöffneten Tabellen zu einer Tabelle verketten und alle schließen@Stokes ,
Das von Ihnen gepostete Skript erstellt eine Reihe neuer Tabellen.Community-Hinweis: Ich weiß nicht, ob es eine Syntax zum Schließen einer Liste von Datentabellen gibt, daher wird die For-Schleife verwendet, um die Quelltabellen einzeln nach Namen und nicht nach Nummer zu schließen.
Names Default to Here(1);
//Careful, this closes all data tables
close all(Data Tables);
//now create similar looking tables
dt = Open("$Sample_Data/Big Class.jmp");
dt << Subset( By (:age));
//close Big Class, keep all the age subset tables open
close(dt,NoSave);
// Create your Tables list
nt = N Table();
Tables = {};
For( i = 1, i <= nt, i++,
Insert Into( Tables, Eval Expr( Data Table( Expr( Data Table( i ) << get name ) ) ) )
);
final = Concatenate( Tables, Create Source Column, Output Table Name( "Big Class Redux" ) );
//close all in the list
For( i = 1, i <= nt, i++,
Eval( Eval Expr( Close( Expr( Tables[i] ), NoSave ) ) )
);
Betreff: [JSL-Fehler] Alle geöffneten Tabellen zu einer Tabelle verketten und alle schließenEs ist sehr einfach, das zu tun, was Sie tun möchten, wenn Sie die Quelltabellenspalte nicht möchten
Names Default To Here( 1 );
Clear Globals();
// Create your Tables list
Tables = {};
For( i = 1, i <= N Table(), i++,
Insert Into( Tables, Data Table( i ) << get name );
);
new Table("all data");
// Run the concatinations
For( i = 1, i <= N Items( Tables ), i++,
Data Table( "all data" ) << Concatenate(
Data Table( Tables[i] ),
append to first table(1)
);
Close( Data Table( Tables[i] ), No Save );
);
Komplexer wird es, wenn Sie eine Quelltabelle wünschen.Wenn Sie die eingebaute Option "Quellspalte erstellen" verwenden, wird für jede Verkettung eine neue Quelltabellenspalte erstellt.Es müssen also einige Anpassungen vorgenommen werden.Unten ist ein funktionierendes Skript, das Ihnen geben sollte, was Sie wollen
Names Default To Here( 1 );
Clear Globals();
// Create your Tables list
Tables = {};
TablesN = {};
For( i = 1, i <= N Table(), i++,
Insert Into( Tables, Data Table( i ) << get name );
for(k=1,k<=n rows(data table(i)),k++, insert into(TablesN,data table( i ) << get name));
);
new Table("all data");
// Run the concatinations
For( i = 1, i <= N Items( Tables ), i++,
Data Table( "all data" ) << Concatenate(
Data Table( Tables[i] ),
append to first table(1)
);
Close( Data Table( Tables[i] ), No Save );
);
data table( "all data" ) << add multiple columns("Source Table", 1, before first, character );
:Source Table << set values( TablesN );[JSL-Fehler] Verketten Sie alle geöffneten Tabellen zu einer Tabelle und schließen Sie alleKann mir jemand helfen, einen Blick auf jsl zu werfen?
Ich versuche, damit alle offenen Tabellen zu einer einzigen Tabelle zu verketten und alle offenen Tabellen zu schließen und nur eine letzte Tabelle übrig zu lassen, die aus allen verkettet wurde.
Wenn ich die JSL ausführe, tritt ein Fehler auf, der dazu führt, dass mehrere „endgültige“ Tabellen neu erstellt und nicht zu einer einzigen Tabelle verkettet werden.
Es ist nicht klar, woher der Fehler kommt.
Danke
Clear Globals();
// Create your Tables list
Tables = {};
For( i = 1, i <= N Table(), i++,
Insert Into( Tables, Data Table( i ) << get name )
);
// Run the concatinations
For( i = 1, i < N Items( Tables ), i++,
ConcTable = Data Table( Tables[i] ) << Concatenate(
Data Table( Tables[i + 1] ),
Create source column,
Output Table Name( "final" )
);
Close( Data Table( Tables[i] ), No Save );
);
Verbraucher- und Marktforschung