使用if公式后在结果列中保持“空白”嘿大家,
我对 jmp 还很陌生,所以我可能对我的要求有点不以为然,可能我不会使用正确的术语,但无论如何我很绝望,因为我想不出解决我的问题的方法:
让我简单描述一下我的情况:我是一名学生,目前正在处理一组数据。 我正在研究某些药物的药物不良反应,我现在看到的影响是“勃起功能障碍”,我从基线和 4 周、12 周等的数据中获得了数据,这意味着我得到了一个列“勃起功能障碍 4wk”、“勃起功能障碍基线”等。
我添加了一个名为“新的勃起功能障碍 4 周”的新专栏,这意味着我正在查看那些在例如 4 周后出现不良反应的人,过滤掉那些在基线时出现但在 4 周后仍然出现的人 - 无论如何从给定的药物。 简而言之:我试图关注 4 周后勃起功能障碍的发生率,以接近药物诱导的效果。
我使用了一个看起来像这样的公式:
For Each Row(
:"new on-set erectile dysfunction 4 WK: y/n "n = If(
:"erectile dysfunction Base y/n"n == "n" & :"erectile dysfunction 4 WK: y/n"n
== "y"
,
"y"
,
"n"
)
);
我的问题是,通过使用该公式,jmp 将我的空值替换为“n”,而我想不出任何方法来修改我的公式以使空格保持为空。

第一列是“勃起功能障碍基线”,第二列是“勃起功能障碍 4wk”,第三列是“新发勃起功能障碍 4wk”。
所以我希望任何人都可以提供帮助。 谢谢!
分析数据表回复:使用 if 公式后在结果列中保持“空白”您的 JSL 正在将值设置为
“n”
所以一种选择是将其设置为
“”
For Each Row(
:"new on-set erectile dysfunction 4 WK: y/n "n = If(
:"erectile dysfunction Base y/n"n == "n" & :"erectile dysfunction 4 WK: y/n"n
== "y"
,
"y"
,
""
)
);
或在查看您的数据后,检查勃起功能障碍的价值 Base y/n 为空白可能是您想要的
For Each Row(
:"new on-set erectile dysfunction 4 WK: y/n "n = If(
(:"erectile dysfunction Base y/n"n == "n" |
:"erectile dysfunction Base y/n"n == "" ) &
:"erectile dysfunction 4 WK: y/n"n
== "y"
,
"y"
,
"n"
)
);
回复:使用 if 公式后在结果列中保持“空白”你好,
我认为您可能对公式进行了过度设计:
首先,您不需要在列公式中指定 For Each Row:JMP 默认情况下单独处理每一行
其次,如果我正确理解了公式的语法,我认为它可以简化为如下所示的列公式。
第三,因为空文本值被评估为不是“y”和不是“n”,JMP 将您的公式评估为“n”,所以这里是您问题的可能解决方案。
(注意:我没有使用您的特定列标题,但您可以在公式编辑器中轻松替换它们)。
If(
:BASELINE == "n" & :Week 4 == "y", "y",
Is Missing( :BASELINE ) | Is Missing( :Week 4 ), .,
"n"
)
最好,
TS