以下是一个示例解决方案,其中包含一个函数normalize_matrix,该函数将一个包含列表的矩阵进行归一化处理。
def normalize_matrix(matrix):
rows = len(matrix)
cols = len(matrix[0])
# 计算每列的最大值和最小值
max_vals = [max(matrix[i]) for i in range(rows)]
min_vals = [min(matrix[i]) for i in range(rows)]
# 归一化处理
normalized_matrix = []
for i in range(rows):
normalized_row = []
for j in range(cols):
normalized_value = (matrix[i][j] - min_vals[i]) / (max_vals[i] - min_vals[i])
normalized_row.append(normalized_value)
normalized_matrix.append(normalized_row)
return normalized_matrix
# 示例用法
matrix = [[1, 2, 3], [4, 5, 6], [7, 8, 9]]
normalized_matrix = normalize_matrix(matrix)
print(normalized_matrix)
输出结果为:
[[0.0, 0.5, 1.0], [0.0, 0.5, 1.0], [0.0, 0.5, 1.0]]
以上示例中,我们首先计算每列的最大值和最小值,然后对每个元素进行归一化处理。归一化的公式为 (原始值 - 最小值) / (最大值 - 最小值)。最后,我们将归一化后的矩阵作为结果返回。
上一篇:包含连字符的字符串长度
下一篇:包含列表的Scala类