自动化本地过滤器/数据过滤器我有一个针对 4 个不同温度的线性回归模型。 我在每个过滤器上放置了一个本地数据过滤器,它允许我指定数据段。
此代码调用源表 2 列中的每个值,如下所示。 我希望这是自动化的,因此可能会有更多或更少的温度,并且我不想每次都编辑代码。 可能有一种通过 JSL 脚本的方法,我尽量避免自己编写,而是使用工作流程。 我添加了一个数据过滤器,只要本地过滤器也存在,它就可以完全按照需要工作。 如果我删除本地过滤器,数据过滤器就会以同样的方式停止工作。
如何更改数据过滤器以使本地过滤器变得冗余?
如果不可能,我将如何将本地过滤器编码为自动?
数据表(“已排序”) << 数据过滤器(
位置( {890, 387} ),
众数( 包括( 1 ) ),
添加过滤器(
列(:段),
其中(:段==-100),
显示(:段,N 个项目(8))
)
);
数据表(“已排序”) << 拟合模型(
SendToByGroup(按组默认),
Y(:VCE),
通过(:源表2),
效果(:ICE),
个性(“标准最小二乘法”),
//Emphasis( "效果杠杆" ),
跑步(
:VCE << {拟合摘要( 0 ),方差分析( 0 ),
参数估计 ( 0 )、失拟 ( 0 )、缩放估计 ( 0 )、
按预测 ( 0 ) 绘制实际值,按预测 ( 0 ) 绘制残差,
绘制学生化残差 ( 0 )、绘制效应杠杆 ( 0 )、
通过正态分位数 ( 0 )、Box Cox Y 变换 ( 0 ) 绘制残差}
),
按组发送(
{:源表 2 == "25C"},
本地数据过滤器(
添加过滤器(列(:Segment),显示(:Segment,N个项目(8)))
)
),
按组发送(
{:来源表 2 == "150C"},
本地数据过滤器(
添加过滤器(列(:Segment),显示(:Segment,N个项目(8)))
)
),
按组发送(
{:来源表2 == "125C"},
本地数据过滤器(
添加过滤器(列(:Segment),显示(:Segment,N个项目(8)))
)
),
按组发送(
{:源表 2 == "100C"},
本地数据过滤器(
添加过滤器(列(:Segment),显示(:Segment,N个项目(8)))
)
)
自动化和脚本编写基础数据分析和建模内容组织数据存取回复:自动化本地过滤器/数据过滤器我不太确定你在这里想做什么? 您是否可能只是从数据过滤器中缺少 Show(1) 以隐藏排除的值?

回复:自动化本地过滤器/数据过滤器您是否在多个过滤器中使用不同的 where 子句,或者是否在每个过滤器中选择相同的范围?我之所以这么问,是因为如果您希望每个子组都具有相同的条件,那么只使用一个过滤器而不是多个过滤器可能会更容易。
回复:自动化本地过滤器/数据过滤器对困惑感到抱歉!
是的,我希望每个人都有相同的条件。 我想要 1 个过滤器来改变它们。
我已经尝试过数据过滤器,当有本地过滤器时我可以正确使用它。 如果我删除本地过滤器,数据过滤器不会改变分析,而只是突出显示点。
回复:自动化本地过滤器/数据过滤器抱歉,我的解释不清楚。 我现在已经选择了显示和包含,这确实效果更好。 只要有本地过滤器,数据过滤器就会调整分析。
我要么不想需要本地过滤器(但我认为这对你来说更难帮助)。 或者我希望本地过滤器不专门调用源表值(因为每次都会更改)。
回复:自动化本地过滤器/数据过滤器我怀疑问题出在您正在使用的 JMP 平台上的自动重新计算选项上。
转到红色三角形并选择
重做=>自动重新计算
这应该允许通过数据过滤器中的更改来更改所有显示。
回复:自动化本地过滤器/数据过滤器要在按组中设置一个过滤器,我建议如下:
dt = Open("$SAMPLE_DATA/Big Class.jmp");
New Window("report",
Data Filter Context Box(
HListBox(
dt << Data Filter(Local, Columns(:age)),
VListBox(
dt << Bivariate(X(:height),Y(:weight),By(:sex))
)
)
)
);
在 JMP18 中,以交互方式(而不是通过脚本编写)跨组共享单个过滤器会更容易,但该脚本应该可以支持多个版本,并且在将来也可以使用。