随时随地连接数据表大家好,
这可能是 starighfroward,但我无法获得正确的 JSL 命令。
如果有人能帮助我,我真的很感激。
我正在运行一个 FOR 循环,每次运行它时,我都会打开一个数据表。
我想将所有数据表连接在一起并将其保存为 FINAL TABLE。
谢谢。
回复:随时随地连接数据表@vishwasanj :
请使用以下代码解决您的问题。
dt = Open( "$SAMPLE_DATA/Big Class.jmp" );
n = 5 ; // Random # of iterations
for (i = 1 , i <= n , i++,
RowsToSelect = Random Index(40,5);
dt << Select Rows(RowsToSelect);
dt << Subset("");
);
// In your case data is coming from a file
// So I am closing out the source table here that I opened for the purpose of demonstration
Close(dt,"No Save");
// Make a list of all open Data tables
openDTs = List();
For( i = 1, i <= N Table(), i++,
Insert Into( openDTs, Data Table( i ) );
);
// Concatenate
for(i = 1 ,i <= N Table(), i++,
dt_Results = openDTs[i];
//Close(openDTs[i]);
,
dt_Results << Concatenate(openDTs[i],"Append To First Table");
Close(openDTs[i]);
);
dt_Results << Set Name("Results");回复:随时随地连接数据表谢谢乌代。 我想我知道怎么做了。 但我所拥有的是,我运行循环并在每次完成时创建一个新的数据表。 我无法控制文件的数量或选择,因为它是自动创建的。 我可以在循环结束时打开 2 个、5 个或 9 个数据表。 我想将所有内容连接到一张表中。
我希望我没有把它复杂化。 让我知道你的想法。 我将了解如何修改您的脚本。 太感谢了。回复:随时随地连接数据表只是为了解释这里发生了什么:
- 一旦你打开循环 - 我们随机选择要选择的行来生成样本集 - 这里
RowsToSelect = Random Index(40,5);
dt << Select Rows(RowsToSelect);
dt1 = dt << Subset("");
- 在 i = 1 时,您正在初始化定义结果的输出数据表的格式
- 当 i != 1 时,您正在将新形成的表中的数据连接回模板文件
最好的
乌代
回复:随时随地连接数据表@vishwasanj :
你好 。 我认为这可以通过下面的一段代码来完成。
dt = Open( "$SAMPLE_DATA/Big Class.jmp" );
n = 5 ; // Random # of iterations
for (i = 1 , i <= n , i++,
RowsToSelect = Random Index(40,5);
dt << Select Rows(RowsToSelect);
dt1 = dt << Subset("");
If(i == 1,
dt_Results = dt1 ;
,
dt_Results << Concatenate(dt1,"Append To First Table");
Close(dt1,"No Save");
);
);