JMP Scripting Noob:如何根據兩列的過濾數據輸入新列?大家好,
我喜歡 JMP,因為它是圖形構建工具,所以我才剛剛開始涉足它的腳本部分。 有人可以幫我處理這個請求嗎?
我有兩個列。 一個用於 X 坐標,一個用於 Y 坐標。 我想要做的只是創建一個新的列,它將根據 X 和 Y 坐標列出右上/左上/右下/左下(LL)...
所以例如...
如果 0<5 且 0<5,則標記為 LL
如果 0<5 且 5<10,則標記為 UL
如果 5<10 且 0<5,則標記為 LR
如果 5<10 且 5<10,則標記為 UR
我很迷茫,任何幫助將不勝感激:)

數據表腳本回复:JMP 腳本新手:如何根據兩列的過濾數據輸入新列?這可以通過在數據表中查找哪一行具有不同的最小值和最大值組合來輕鬆完成。
names default to here( 1 );
dt = New Table( "Sample",
Add Rows( 4 ),
New Column( "x",
Set Values( [1, 1, 6, 6] )
),
New Column( "y",
Set Values( [1, 6, 1, 6] )
)
);
dt << new column("location", character, formula(
:location[(dt << get rows where(:x==col max(:x) & :y==col max(:y)))[1]]="UR";
:location[(dt << get rows where(:x==col max(:x) & :y==col min(:y)))[1]]="LR";
:location[(dt << get rows where(:x==col min(:x) & :y==col max(:y)))[1]]="UL";
:location[(dt << get rows where(:x==col min(:x) & :y==col min(:y)))[1]]="LR";
));

回复:JMP 腳本新手:如何根據兩列的過濾數據輸入新列?通過分別檢查 X 和 Y 並將它們連接在一起,您可以使用 JMP 中的公式相當簡單地完成此操作。
像下面這樣的東西應該有效(不是說如果值為 0,5 或值超過 10,它根本不會被分類):
If(0 < :y < 5, "L", 5 < :y < 10, "U") || If(0 < :x < 5, "L", 5 < :x < 10, "R")