示例:
我想知道如何计算两个值之间的百分比,即第三个值。
例如:范围是46到195。值46为0%,值195为范围的100%。值65占此范围的百分比是多少?
rangeMin=46
rangeMax=195
inputValue=65
inputPercentage =?
发布于 2017-12-14 19:55:53
如果您想计算值列表的百分比并截断最大值和最小值之间的值,您可以这样做:
private getPercentages(arr:number[], min:number=0, max:number=100): number[] {
let maxValue = Math.max( ...arr );
return arr.map((el)=>{
let percent = el * 100 / maxValue;
return percent * ((max - min) / 100) + min;
});
};
这里的函数调用:
this.getPercentages([20,30,80,200],20,50);
将会返回
[23, 24.5, 32, 50]
其中百分比是相对的,并且放置在最小值和最大值之间。
发布于 2019-10-24 16:38:51
可用于缩放任意数量的变量
Python实现:
# List1 will contain all the variables
list1 = []
# append all the variables in list1
list1.append(var1)
list1.append(var2)
list1.append(var3)
list1.append(var4)
# Sorting the list in ascending order
list1.sort(key = None, reverse = False)
# Normalizing each variable using ( X_Normalized = (X - X_minimum) / (X_Maximum - X_minimum) )
normalized_var1 = (var1 - list1[0]) / (list1[-1] - list1[0])
normalized_var2 = (var2 - list1[0]) / (list1[-1] - list1[0])
normalized_var3 = (var3 - list1[0]) / (list1[-1] - list1[0])
normalized_var4 = (var4 - list1[0]) / (list1[-1] - list1[0])
https://stackoverflow.com/questions/25835591
复制相似问题