如何从报表中保存一列值以供以后使用<meta http-equiv="Content-Type" content="text/html; charset=UTF-8" />你好,
我正在尝试开发一个脚本来自动执行多个数据分析任务。其中之一是自动查找数据集的分布,然后使用该分布的参数运行模拟。
除了我不确定如何使用我在Profiler模拟中从分布中保存的参数外,我有大部分内容。
在分发代码之后,我保存参数如下:
parameterOne = distReport [ “整体YA-P20” ] [ outlinebox ( “?” || distNameOne )] [ “参数估计” ] [ NumberColBox ( 1 )] ;
这会保存整个列的所有值吗?我知道我是否使用...... [ NumberColBox ( 1 )] [ 1 ] ;它将保存第1行,如何保存未知行数的值?
第二个问题:我可以在分析器中简单地使用这个变量“parameterOne”吗...
的eval(解析(EvalInsert(“\ [
探查(
Y(第(3)栏),
探查(
1,
期限值(
名称(“总体YA-P20”)(227.01),
名称(“整体XB-P2”)(324.6375)
)
模拟器(
1,
因素(
名称(“整体YA-P20”)<<随机(
^ ^ distNameOne( parameterOne )
)
名称(“整体XB-P2”)<<随机(
^ distNameTwo ^(parameterTwo)
)
)
回应(合并<<无噪音)
)
)
)
] \“)));
我试过这样做没有成功。没有错误代码,但分析器未使用正确的参数。
感谢您对我的成熟jsl技能的帮助和耐心。
Re:如何从报表中保存一列值以供以后使用太好了,谢谢!一切正常。
如何从报表中保存一列值以供以后使用好的,我明白了这个问题。 您可以使用以下代码创建参数列表的字符串表示形式:
mat = colBox << Get As Matrix;
strValues =“”;
对于(i = 1,i <= NRows(mat),i ++,
strValues = strValues || CHAR(垫 )|| “”
);
然后将此变量插入到命令中:
...
因素(高度<<随机(^ dist ^(^ strValues ^))),
...
从技术上讲,strValues变量会在列表末尾生成一个额外的逗号。 这可能会被剥夺,但JMP宽容了冗余逗号,代码工作正常。
Re:如何从报表中保存一列值以供以后使用嗨戴夫
我知道所有参数都存储在NumColBox(1)中,但我引用它的原因是因为我引用了2个不同分发报告的参数。
我的主要问题是参数的数量会根据分发的类型而变化。所以我可以有1,2或更多参数,具体取决于数据(正常,威布尔等)。所以我不能使用你上面提供的代码,因为假设我总是有2个参数。有没有办法在未知大小的矩阵中使用这些项目?
如何从报表中保存一列值以供以后使用参数估计包含在名为NumColBox(1)的显示框中。 你只需要参考一次。 “获取为矩阵”消息将所有参数估计值检索为单个集合。 然后,您需要引用此矩阵中的特定项目:
打开(“$ SAMPLE_DATA / Big Class.jmp”);
dist =分布(
连续分配(
列(:高度),
拟合分布(威布尔)
)
);
distR = dist <<报告;
parameterEstimates = distR [NumberColBox(1)];
matParameters = parameterEstimates << Get As Matrix;
parameter1 = matParameters [1];
parameter2 = matParameters [2];
节目(matParameters,参数1,参数);
Re:如何从报表中保存一列值以供以后使用谢谢您的帮助。
我现在正确地将数据保存为矩阵,但是当我尝试在分析器中使用它时,它仍然使用错误的数字......
matrixParameterOne = parameterOne << 得到矩阵 ;
matrixParameterTwo = parameterTwo << 得到矩阵 ;
//运行模拟
EVAL ( 解析 ( EvalInsert ( “\ [
探查(
Y(第(3)栏),
探查(
1,
期限值(
名称(“总体YA-P20”)(227.01),
名称(“整体XB-P2”)(324.6375)
)
模拟器(
1,
因素(
名称(“整体YA-P20”)<<随机(
^ distNameOne ^(^ matrixParameterOne ^)
)
名称(“整体XB-P2”)<<随机(
^ distNameTwo ^(^ matrixParameterTwo ^)
)
)
回应(合并<<无噪音)
)
)
)
] \” ))) ;
对此有何看法?
Re:如何从报表中保存一列值以供以后使用关于保存参数;您可以创建对显示框的引用,然后向其发送消息,例如:
打开(“$ SAMPLE_DATA / Big Class.jmp”);
dist =分布(
连续分布(列(:高度),拟合分布(正常))
);
distR = dist <<报告;
colBox = distR [NumberColBox(1)];
mat = colBox << Get As Matrix;
秀(垫)
对于第二个问题,要将变量替换为评估,您使用符号^ name ^的方式与分配名称相同,例如
名称(“整体YA-P20”)<<随机(
^ ^ distNameOne( ^ ^ parameterOne )
)
戴夫