根据汇总表中的选定列设置列的值嗨专家。
我有一个链接的汇总表,我在其中根据条件选择行。
在我的主表中,我现在需要在列中为选定的行设置一个特定值。
我制作了一个基本表格,其中包含以下内容:
样本错误
s1 0
s1 0
s1 0
s2 0
s2 0
s2 0
我有一些非常简化的代码作为示例:
dt = 当前数据表();
dt_sum = dt << 摘要(
组(:样本),
频率(“无”),
重量(“无”)
);
dt_sum << select where (:sample == "s1");
r = dt << 获取选定的行;
关闭(dt_sum,nosave);
列(dt,“错误”)[r] = 1;
如果 dt_sum 关闭,则代码运行。 然而,在我的代码中,这是不可能的,因为稍后需要它。
如果 dt_sum 未关闭,我收到以下错误
“无法为列‘错误’设置值,因为行号 (-1) 无效。{1}”
此外,第 1 行和第 4 行的错误值更改为 1,而不是其余部分。
你们中的任何人都可以向我解释为什么这不起作用,或者帮助我解决可能的问题吗?
提前致谢, 安德斯
回复:根据汇总表中的选定列设置列的值谢谢,就是这样:)回复:根据汇总表中的选定列设置列的值1. 我认为您应该将问题提交给 JMP 支持。看起来即使您直接指向“dt”数据表,它仍在查看“dt_sum”数据表并在那里更新。
2. 这是一个允许代码工作的解决方法
dt = current data table();
dt_sum = dt << Summary(
Group( :sample),
Freq( "None" ),
Weight( "None" )
);
dt_sum << select where (:sample == "s1");
r = dt << get selected rows;
//close(dt_sum, nosave);
current data table(dt);
column(dt, "error")[r] = 1;