表达式未求值。我一直搞不懂如何正确使用 EvalExpr 函数。现在弹出一个窗口,要求选择通配符列名,并将其指定为“分隔符”。
nw = New Window( "Does the Data Contain Experimental Cells?",
<
<MODAL></MODAL>
<P>然后我尝试在列公式中评估对象,无论我使用 Eval(Eval Expr( 的任何组合,似乎都不起作用。</P> <CODE class=" language-jsl">If( N Items( yVars ) == 0,
Data Table( "HIRP" ) << New Column( "Average Active Power",
Numeric,
"Continuous",
Format( "Best", 12 ),
Formula(
If(
:Heater == "Reader", Col Mean( :HL_R_HEAT, :Heater ),
Contains( :Heater, "Writer" ),
Col Mean( :HL_W_HEAT, :Heater )
)
)
),
Eval(Eval Expr(Data Table( "HIRP" ) << New Column( "Average Active Power",
Numeric,
"Continuous",
Format( "Best", 12 ),
Formula(
If(
:Heater == "Reader", Col Mean( :HL_R_HEAT, :Heater, As Column(Expr(Divider)) ),
Contains( :Heater, "Writer" ),
Col Mean( :HL_W_HEAT, :Heater, :HD_NUM, As Column(Expr(Divider)) )
)
)
)
)));
<LINGO-LABS id="lingo-labs-942626" slang="en-US" mode="CREATE">
<LINGO-LABEL>自动化和脚本编写</LINGO-LABEL>
</LINGO-LABS>
回复:表达式未求值。改变
As Column(Expr(Divider))
到
Expr(NameExpr(As Column(dt, Divider)))
命名 Expr() 不是必需的,但使用它可以让公式看起来更“美观”。
Names Default To Here(1);
dt = open("$SAMPLE_DATA/Big Class.jmp");
div = "weight";
Eval(EvalExpr(
dt << New Column("C", Numeric, Continuous, Formula(
:Height / Expr(NameExpr(AsColumn(dt, div)))
))
));
此外,您可以通过仅运行 EvalExpr 部分而不是整个 Eval(EvalExpr(...) 来测试表达式求值。
回复:表达式未求值。需要稍作调整,但已经解决了,谢谢。
If( N Items( yVars ) == 0,
Data Table( "HIRP" ) << New Column( "Average Active Power",
Numeric,
"Continuous",
Format( "Best", 12 ),
Formula(
If(
:Heater == "Reader", Col Mean( :HL_R_HEAT, :Heater ),
Contains( :Heater, "Writer" ),
Col Mean( :HL_W_HEAT, :Heater )
)
)
),
Eval(Eval Expr(Data Table( "HIRP" ) << New Column( "Average Active Power",
Numeric,
"Continuous",
Format( "Best", 12 ),
Formula(
If(
:Heater == "Reader", Col Mean( :HL_R_HEAT, :Heater, Expr(NameExpr(As Column( Divider))) ),
Contains( :Heater, "Writer" ),
Col Mean( :HL_W_HEAT, :Heater, :HD_NUM, Expr(NameExpr(As Column( Divider))) )
)
)
)
)));
回复:表达式未求值。雅尔莫
我现在的方法可行,但我不太明白它为什么有效。请问哪里能找到关于评估方法的详细说明?希望能少花点时间在这里寻找答案。
回复:表达式未求值。第九课:高级JSL
脚本编写指南 > 编程方法 > 高级表达式、宏和列表
Morgan, J. (2010). “表达式处理函数:第一部分。” JMPer Cable 26:15–19。