比较两个百分比,如果一列<另一列,则用状态填写“是”建立新的列名,否则为“否”
这是我需要的功能,当我测试时以下脚本是可行的,但是当我更改列名称时它不起作用,请检查图片:我的列 “目标进度”和“实际进度”是百分比这与大班不同。如何修改脚本?
可行的脚本:
dt = Open(“ $ SAMPLE_DATA / Big Class.jmp”);
dt << New Column(“ status”,“ Character”,“ Nominal”);
:status <<设置值(
{“ yes”,“ no”} [(:height <<获取矩阵)<=(:weight <<获取矩阵)]
);
脚本失败:“目标进度”和“实际进度”为百分比。
dt << New Column(“ status”,“ Character”,“ Nominal”);
:status <<设置值(
{“ yes”,“ no”} [(:实际进度<<获取为矩阵)> =(:目标进度<<获取为矩阵)]
);
回复:两个百分比进行比较,如果一列<另一列,则使用状态填写“是”来构建新的列名,否则为“否”我的猜测是,因为您给出的矩阵为零。
JMP索引从1而不是0开始。
尝试这个。
:status << Set Values({"yes", "no"}[((:Actual Progress << Get As Matrix) >= :Target Progress << Get As Matrix))+1]);
您应该检查是否为yes和no得到正确的值,您可能希望将yes和no交换。
但实际上我只是明确地设置它们并使用值标签。
dt << new Column("Status", <<SET each="" value=""></SET>
回复:两个百分比进行比较,如果一列<另一列,则使用状态填写“是”来构建新的列名,否则为“否”最终使用此作品。非常感谢。
dt = Current Data Table();
dt << New Column( "Actual Progress.",
"Numeric",
formula( If( :Target Complete >= :Actual Progress, "Yes", "No" ) )
);