根据设定阈值对数值进行量化降维

我有一批数据,假设是100个文件的存储大小,比如1k,2k,3k......100k,在没有降维之前,数据维度是100维,比如1k的的量化就是1,0,0,0,......(即在0的位置取1,如果是2k则在1的位置取1),那么现在这个维度太大了,需要对其进行降维,假设我们想降到50维,即取值1k和2k的量化结果一样,取值3k和4k的量化结果一样....

import numpy as np

input = [1,2,3.....]
# 最小值和最大值
min_val = min(input)
max_val = max(input)
# 生成n个等距的数值
n = 50
values = np.linspace(min_val, max_val, n)

# 使用numpy.digitize函数进行量化
quantized_list = np.digitize(input, values)
# 在np.digitize中input的类型也可以是int

 

posted @ 2023-03-03 09:26  海_纳百川  阅读(15)  评论(0编辑  收藏  举报
本站总访问量