从一组中找出 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 !