Java实现最大最小值归一化
时间: 2023-08-01 09:14:06 浏览: 153
最大最小值归一化是一种常见的数据预处理方法,可以将数据缩放到[0, 1]之间。Java实现最大最小值归一化的代码如下:
```java
public class MinMaxScaler {
private double min;
private double max;
public MinMaxScaler(double min, double max) {
this.min = min;
this.max = max;
}
public double[] fitTransform(double[] data) {
double[] scaledData = new double[data.length];
double range = max - min;
for (int i = 0; i < data.length; i++) {
scaledData[i] = (data[i] - min) / range;
}
return scaledData;
}
}
```
使用示例:
```java
double[] data = {1, 2, 3, 4, 5};
MinMaxScaler scaler = new MinMaxScaler(1, 5);
double[] scaledData = scaler.fitTransform(data);
System.out.println(Arrays.toString(scaledData));
```
输出结果:
```
[0.0, 0.25, 0.5, 0.75, 1.0]
```
其中,`MinMaxScaler`类的构造函数接受最小值和最大值作为参数,`fitTransform`方法接受需要归一化的数据数组作为参数,返回归一化后的数组。在`fitTransform`方法中,先计算数据的取值范围,然后对每个数据进行归一化处理。
阅读全文