在 Access For 循环中无法识别为表参数我正在尝试连接我的子集表,但我一直收到此错误:
在访问或评估“dtSubsetList [ /*###*/i]”时无法识别为表参数,dtSubsetList [/*###*/i]
Im using JMP 16</CODE></P><P> </P><PRE class="lia-code-sample language-markup"><CODE>names default to here(1);
dt = Open( "$SAMPLE_DATA/Big Class.jmp" );
dtSubsetList = dt << Subset(
By( :sex ),
All rows,
Selected columns only( 0 ),
columns( :name, :age, :height, :weight )
);
dtNew = New Table( "New Table" );
For(i = 1, i <= N Items(dtSubsetList ), i++,
dtNew << Concatenate(dtSubsetList[i], Append to first table(1));
);
自动化和脚本视窗回复:在 Access For 循环中无法识别为表参数我无法复制该问题。您的脚本运行正常,没有错误。
我建议您退出 JMP,然后重新打开它并运行脚本。您的 dt_Test 显然不在您提供的 JSL 中,并且可能是您尝试过的所有试验和错误的产物。
我还会建议你修改一下代码。Concatenate 平台能够在一次执行中连接多个表。因此,你实际上可以将完整的数据表列表传递给 Concatenation,而不必分别循环遍历每个表。
Names Default To Here( 1 );
dt = Open( "$SAMPLE_DATA/Big Class.jmp" );
dtSubsetList = dt << Subset(
By( :sex ),
All rows,
Selected columns only( 0 ),
columns( :name, :age, :height, :weight )
);
dtNew = New Table( "New Table" );
/*For( i = 1, i <= N Items( dtSubsetList ), i++,
dtNew << Concatenate( dtSubsetList[i], Append to first table( 1 ) )
);*/
dtNew << Concatenate( dtSubsetList, Append to first table( 1 ) );