Col 函數和行狀態根據 JMP 版本 15 的發行說明:
Col 函數通過 Excluded(Row State()) 函數尊重排除的行。
列最大值(:高度,:性別,排除(行狀態()));
但是,這種語法似乎不起作用。任何人都可以建議正確的語法嗎?
腳本回复:Col 函數和行狀態我認為這與分箱背後的概念相同。 對於每個觀察,您都將一個值映射到另一個值,在這種情況下,是一個組值。 它可能是一個垃圾箱。 它可能是集中趨勢的衡量標準。
回复:Col 函數和行狀態好,謝謝。我無法真正理解為表的每一行生成列統計信息的想法,但我想肯定有用例。我將堅持使用用戶定義的函數來計算列統計信息,同時考慮行排除。
回复:Col 函數和行狀態根據文件,當指定 By 變量時,應在列公式或 For Each Row() 中使用該函數:
(可選)A 按變量計算統計跨行組。 在 a 中使用 By 變量山口umn 公式或在對於每一行()功能。
在回顧本文前面的一些示例時,我同意它似乎將排除的值視為它們自己的 By 級別。
回复:Col 函數和行狀態看起來它與列公式一起使用,其中 Row() 函數在評估時定義。
回复:Col 函數和行狀態在一台計算機上它可以工作:

另一方面,它失敗了:

回复:Col 函數和行狀態與大班合作(當然):
colmaximum(:height,excluded(rowstate()))
這是有效的。但是在一台計算機上而不是另一台計算機上。兩者都運行 15.1.0。
現在我完全糊塗了!
下一篇文章截圖...
回复:Col 函數和行狀態有趣的。 JMP 16 的預發布版本似乎適用於 r=1 和 r=2,但此後就不行了:
NamesDefaultToHere(1);
dt = Open("$SAMPLE_DATA/Big Class.jmp");
mw = J(NRow(dt), 2, .);
for(r=1, r<=NRow(dt), r++,
Row() = r;
RowState(Row()) = ExcludedState(1);
mw[r,1] = ColMean(:weight, Excluded(RowState(Row())));
mw[r,2] = ColMean(:weight, Excluded());
RowState(Row()) = ExcludedState(0);
);
AsTable(mw);
dt << Distribution(
Continuous Distribution(
Column( :weight ),
Quantiles( 0 ),
Histogram( 0 ),
Outlier Box Plot( 0 )
),
Local Data Filter(
Add Filter(
columns( Transform Column( "Row", Nominal, Formula( Row() ) ) ),
Where( Transform Column( "Row", Nominal, Formula( Row() ) ) == 1 ),
Display(
Transform Column( "Row", Nominal, Formula( Row() ) ),
N Items( 15 ),
Find( Set Text( "" ) )
)
)
)
);回复:Col 函數和行狀態戴夫,
非常混亂。 我想這是我們的朋友溫迪的問題。回复:Col 函數和行狀態我可以編寫一個解決方案——我的問題是關於版本 15 是否允許僅使用列函數來完成——這是我從發行說明中得到的印象。
回复:Col 函數和行狀態在這種情況下,尊重意味著排除只是列統計公式中的附加 byVar 嗎?
如果您想要沒有排除值的列的最大值,您可以使用 Summarize 而不是 Col Maximum 嗎? 它似乎忽略了排除的行。
Names Default To Here(1);
dt =New Table("ExcludeColMax",
Add Rows(6),
Compress File When Saved(1),
New Column("A",
Numeric,
"Continuous",
Format("Best", 12),
Set Values([1, 10, 100, 2, 20, 200]),
Set Display Width(46)
),
New Column("B",
Character,
"Nominal",
Set Values({"A", "A", "A", "B", "B", "B"})
),
New Column("C",
Numeric,
"Continuous",
Format("Best", 12),
Formula(Col Maximum(:A, :B, Excluded())),
Set Display Width(65)
),
Set Row States([0, 0, 6, 6, 0, 6])
);
Write("Looping col max:");
For Each Row(
Show(Col Maximum(:A, :B, Excluded()))
);
Write("\!N\!NOnly col max:");
Show(Col Maximum(:A, :B, Excluded()));
Write("\!N\!NSummarize:");
Summarize(dt, exg = By(:B), exm = Max(:A));
Show(Eval List({exg, exm}));
Show(Max(exm));回复:Col 函數和行狀態我用 v15.2 測試過,問題是一樣的。請注意,該用例是在腳本中使用該函數,而不是在列公式中(不知道為什麼我想要一行中的列統計信息)。
回复:Col 函數和行狀態如果其他人出現,我將在此處添加這個非常簡單的示例:

Names Default To Here(1);
New Table("ExcludeColMax",
Add Rows(6),
Compress File When Saved(1),
New Column("A",
Numeric,
"Continuous",
Format("Best", 12),
Set Values([1, 10, 100, 2, 20, 200]),
Set Display Width(46)
),
New Column("B",
Character,
"Nominal",
Set Values({"A", "A", "A", "B", "B", "B"})
),
New Column("C",
Numeric,
"Continuous",
Format("Best", 12),
Formula(Col Maximum(:A, :B, Excluded())),
Set Display Width(65)
),
Set Row States([0, 0, 6, 6, 6, 0])
);回复:Col 函數和行狀態謝謝你讓我知道。這不適用於 15.1 - 我將嘗試與 15.2 進行比較。
回复:Col 函數和行狀態我很快測試了一下,似乎只使用 Excluded() 似乎有效(我使用的是 15.2.1)。