- 第1题:编程实现“min - max标准化”,输入一组整型数据,将其进行标准化后输出,需注意类型转换。
时间: 2024-09-24 22:09:26 浏览: 38
java 输入一个数字组成的数组(输出该数组的最大值和最小值)
编程实现"最小-最大标准化"(Min-Max Scaling),也称为Z-score标准化,是一种常见的数值数据预处理技术。它的目标是将所有数值映射到一个新的范围内,比如[-1, 1]或[0, 1]。以下是使用Python的一个简单示例:
```python
def min_max_standardization(data):
# 获取数据集中的最小值和最大值
min_value = min(data)
max_value = max(data)
# 计算标准化公式中的系数
scale = max_value - min_value
# 如果存在除零的情况(数据集中所有元素都相同),设置一个非常小的值作为分母
if scale == 0:
scale = 1e-8
# 应用标准化公式
standardized_data = [(x - min_value) / scale for x in data]
# 返回标准化后的数据,同时保留原类型(这里假设是整型)
return [int(round(value)) if isinstance(value, int) else value for value in standardized_data]
# 示例输入
input_data = [5, 10, 15, 20]
normalized_data = min_max_standardization(input_data)
print("标准化后的数据:", normalized_data)
阅读全文