import numpy as np
def binarycoder(quotient):
result = []
while quotient > 0:
quotient,remainder=divmod(quotient,2)
result.append(remainder)
return result[::-1]
def binary_range(n):
max_index = n - 1
max_lenght = len(binarycoder(max_index))
return [[0]*(max_lenght - len(binarycoder(i)))+binarycoder(i) for i in range(n)]
binary_range(64)
def AB_test_Unit(n):
math = __import__("math")
return math.ceil(math.log2(n))
AB_test_Unit(64)
def ABtest_sequence(elements):
result = []
m = len(elements)
unit = int(AB_test_Unit(m))
binarycodes = np.array(binary_range(m))
for i in range(unit):
index_ = binarycodes[:,i]
result.append(np.ravel(np.argwhere(index_ != 0)))
return {"测试序号":np.array(result),"需要测试单位数量":unit,"二进制编码":binarycodes}
print(ABtest_sequence(list(range(65))))
AB测试排序
最新推荐文章于 2023-06-15 09:04:18 发布