從一組中找出 3 個最大值我需要從按某些列(例如大班)分組的一組資料中確定 3 個最大值,假設我想確定每個性別每個年齡的 3 個最高的學生。我不認為該集合中存在任何聯繫/歧義,但在我的集合中存在,例如,如果給定年齡/性別組合的身高是(64,63,61,61,61,61),則它不會選擇61 中的哪一個無關緊要。
我是否可以在列中使用一個公式,為這些已識別的學生返回 1,為其餘學生返回 0?
我想有一種方法可以用 .jsl 迴圈來做到這一點,但我希望有一個公式可以做到這一點。
基礎資料分析與建模資料混合與清理回覆:從一組中找出 3 個最大值您可以為此使用公式。 有時只需 Col Rank() 就足夠了,但有時您應該將其與 Col Number() 結合。 之後使用簡單的比較來獲得 1 或 0 值
1 + Col Number(:height, :age, :sex) - Col Rank(:height, :age, :sex) < 4
回覆:從一組中找出 3 個最大值工作完美,正是我所需要的。謝謝@jthi !