假设我有一个包含值的列:
23
24
25
66
67
84
81
85
我想把它分成N组,比如N现在是4。
23,1
24,1
25,2
66,2
67,3
84,3
81,4
85,4
我实际上需要将大约30k个排序值分成1到99组;每个都有相同数量的元素。
在Excel中快速完成此操作的方法吗?
答案 0 :(得分:1)
我使用此技巧进行相等的数据存储。假设您的数据在A1:A100
范围内。将此公式放在B1中:
=MAX(ROUNDUP(PERCENTRANK($A$1:$A$100,A1) *4,0),1)
在B列中全部填写公式即可。该公式将范围分为4个相等的存储区,并返回单元格A1所属的存储区编号。第一个存储区包含最低25%的值。
根据您的意愿调整水桶数量:
=MAX(ROUNDUP(PERCENTRANK([Range],[OneCellOfTheRange]) *[NumberOfBuckets],0),1)
每个存储桶中的观察次数将相等或几乎相等。例如,如果您有100个观测值,并且想要将其拆分为3个存储桶,则这些存储桶将包含33、33、34个观测值。因此几乎相等。您不必担心-该公式可以为您解决问题。
答案 1 :(得分:0)
如果这是在A栏
将公式置于B栏
=MOD(ROW(); 4)+1
这个结果
答案 2 :(得分:0)
使用 A 栏 A 中的数据输入:
=A1 & "," & ROUNDUP(ROW()/(COUNT(A:A)/4),0)
并复制下来。例如:
更改公式中的 4 以更改组的数量。