使用来自另一列的 if 条件在 JMP 中创建新列
Creating a new column in JMP using an if condition from another column
我是 JMP 的新手,所以我仍然感觉很熟悉。
我想在 JMP 中创建一个名为 "Status" 的新列。此状态是字符,取决于列 "Grade" 的值。如果 "Grade" 列中条目的值为零,则 "Status" 列中条目的值应为 "fail"。如果 "Grade" 值大于 100,则 "Status" 列中的条目应为 "invalid"。如果 :Grade" 值小于 0,则 "Status" 值应为 "invalid"。这应该很简单。但不知何故,我的脚本无法运行:
dt = Current Data Table();
dt << New Column("Status", Character, Formula(
If(:Name( "Grade" )==0, "fail",
:Name( "Grade" )>100, "invalid",
:Name( "Grade" )<0, "invalid")
));
你能帮我调试这个脚本吗?
我刚刚尝试了脚本,公式对我有用。
这是一些更完整的 JSL,它还添加了 "Status" 所依赖的 "Grade" 列。
dt = Current Data Table();
dt << New Column( "Grade",
Numeric,
"Continuous",
Format( "Best", 12 ),
);
dt << New Column( "Status",
Character,
"Nominal",
Formula(
If(
:Grade == 0, "fail",
:Grade > 100, "invalid",
:Grade < 0, "invalid"
)
)
);
问题可能是您还没有打开带有成绩列的数据 table?这是使用公式和一些值创建全新 table 的脚本。
New Table( "Grading Test",
Add Rows( 7 ),
New Column( "Grade",
Numeric,
"Continuous",
Format( "Best", 12 ),
Set Selected,
Set Values( [45, 20, 100, 101, -4, 0, 120] )
),
New Column( "Status",
Character,
"Nominal",
Formula(
If(
:Grade == 0, "fail",
:Grade > 100, "invalid",
:Grade < 0, "invalid"
)
)
)
);
我通过交互式创建 table 并使用红色三角形菜单并选择 "Copy Table Script" 来创建它。
我试过JMP 12.0,你用的是哪个版本?
我是 JMP 的新手,所以我仍然感觉很熟悉。 我想在 JMP 中创建一个名为 "Status" 的新列。此状态是字符,取决于列 "Grade" 的值。如果 "Grade" 列中条目的值为零,则 "Status" 列中条目的值应为 "fail"。如果 "Grade" 值大于 100,则 "Status" 列中的条目应为 "invalid"。如果 :Grade" 值小于 0,则 "Status" 值应为 "invalid"。这应该很简单。但不知何故,我的脚本无法运行:
dt = Current Data Table();
dt << New Column("Status", Character, Formula(
If(:Name( "Grade" )==0, "fail",
:Name( "Grade" )>100, "invalid",
:Name( "Grade" )<0, "invalid")
));
你能帮我调试这个脚本吗?
我刚刚尝试了脚本,公式对我有用。
这是一些更完整的 JSL,它还添加了 "Status" 所依赖的 "Grade" 列。
dt = Current Data Table();
dt << New Column( "Grade",
Numeric,
"Continuous",
Format( "Best", 12 ),
);
dt << New Column( "Status",
Character,
"Nominal",
Formula(
If(
:Grade == 0, "fail",
:Grade > 100, "invalid",
:Grade < 0, "invalid"
)
)
);
问题可能是您还没有打开带有成绩列的数据 table?这是使用公式和一些值创建全新 table 的脚本。
New Table( "Grading Test",
Add Rows( 7 ),
New Column( "Grade",
Numeric,
"Continuous",
Format( "Best", 12 ),
Set Selected,
Set Values( [45, 20, 100, 101, -4, 0, 120] )
),
New Column( "Status",
Character,
"Nominal",
Formula(
If(
:Grade == 0, "fail",
:Grade > 100, "invalid",
:Grade < 0, "invalid"
)
)
)
);
我通过交互式创建 table 并使用红色三角形菜单并选择 "Copy Table Script" 来创建它。
我试过JMP 12.0,你用的是哪个版本?