VB数据比对,例如1:25:30:5:4:7:6:12还有2:23:28:14:5:6:8:56大约有1000多组这样的数据,每组是8个数据位,和用户提交的数组比对,计算哪一组更加接近,计算方式是对比每组的每个数据位,求数差,数差最小的就是
问题描述:
VB数据比对,例如1:25:30:5:4:7:6:12还有2:23:28:14:5:6:8:56大约有1000多组这样的数据,每组是8个数据位,和用户提交的数组比对,计算哪一组更加接近,计算方式是对比每组的每个数据位,求数差,数差最小的就是最接近的,例如a=1:2:3:4:5:6:7:8,b=9:2:3:4:5:6:7:8,c=5:2:3:4:5:6:7:8,z=8:2:3:4:5:6:7:8求 a b c 哪一组与z最接近,比对结果为c
答
这个在算法上要选择:向量的标准差,即计算对应元素差的平方和,再将这和数开平方.标准差小的就是最接近的.
建立将数据交给VBA,用Excel中的内置函数进行高速运算,这样比自己写的函数快N倍.