使用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