回复:轉換列:排除行的錯誤作為一種解決方法,人們可以向數據過濾器詢問過濾行並相應調整公式列。
它可以工作 - 但絕對不像使用 GraphBuilder 和 JmpDataFilter 時那樣舒適。
一個很大的缺點:
在 Jmp 中,用戶可以隨時自由添加本地數據過濾器。
誰將添加過濾器狀態處理程序以保證顯示的值得到更新?
公式列和數據過濾器的組合 - 這聽起來不像是一個利基應用程序。
因此,除了這個解決方法之外,我想 GraphBuilder 中還有一個簡單的解決方案 - 但我到目前為止還找不到它。
誰有類似的應用程序 - 並且已經找到了一鍵式 Jmp 舒適解決方案?

Names Default to Here(1);
dt = Open( "$SAMPLE_DATA/Big Class.jmp" );
myRows=1::N Rows(dt);
New Column( "Rank_correct",Formula( Col Rank( :height, Excluded(), Contains( myRows, Row() ) > 0 ) ));
gb = dt << Graph Builder(
Variables(
X(
:name,
Order By( :Rank_correct, Ascending, Order Statistic( "Mean" ) )
),
Y( :Rank_correct )
),Elements( Points( X, Y ) ));
updateNow = Function({x},
myRows= (Current Report()["Local Data Filter"] << get scriptable object) << Get Filtered Rows;
if(or(isempty(myRows),NItems(myRows)==0),myRows=1::N Rows(dt));
:Rank_correct<<EVAL formula=""></EVAL>
回复:轉換列:排除行的錯誤我發布了一個願望,希望增強圖形生成器中轉換列的功能(以及其他報告,如摘要!!!):
轉換列 - 與匯總統計一樣舒適?
有了新功能,Transfrom Columns 將變得像摘要統計一樣舒適 - 而且功能將遠遠超出這一點:)
轉換列:排除行的錯誤在下面的範例中,我使用資料過濾器來限制資料 - GraphBuilder 腳本內的本機資料過濾器用於進一步限制資料。
繪製了 3 個不同的排名:
- 第一個 Rank(藍點)沒有 Excluded() 參數,因此所有資料點都會被計數 - 即使是被(全域)資料篩選器排除的資料點。 這就是為什麼第一個繪製的條目已經以高值開始。
- 第二個排名公式(紅色)具有 Excluded() 參數,因此某些行不計算在內,且排名值較低。 但它們仍然不是從 1 開始的。 這是預期的,因為公式儲存在資料表中 - 並且不知道被排除的行本地資料過濾器情節的。
- 第三個排名公式與第二個相同,但它用在隨報表產生的轉換欄位中。 不幸的是,這個公式還忽略了本地資料過濾器排除的行。
未顯示:
用戶期望的排名:值從 1 到 N。

Names Default to Here(1);
dt = Open( "$SAMPLE_DATA/Big Class.jmp" );
dt << Data Filter( Add Filter( columns( :height ), Where( :height >= 63 ) ) );
dt << Graph Builder(
Transform Column( "Rank[height] 3", Formula( Col Rank( :height, Excluded() ) ) ),
Variables(
X(
:name,
Order By( :"Rank[height]"n, Ascending, Order Statistic( "Mean" ) )
),
Y( :"Rank[height]"n ),
Y( :"Rank[height] 2"n, Position( 1 ) ),
Y( :"Rank[height] 3"n, Position( 1 ) )
),
Elements( Points( X, Y( 1 ), Y( 2 ), Y( 3 ), Legend( 14 ) ) ),
Local Data Filter( Add Filter( columns( :height ), Where( :height >= 65.815 ) ) ),
)
資料混合與清理數據探索和視覺化