numpy数组,对除第一列之外的列进行MinMaxScaler
时间: 2024-04-08 08:28:30 浏览: 108
03-python-numpy-简介-基础-数组-数组类型
您可以使用NumPy库中的函数来对numpy数组的除第一列之外的列进行MinMaxScaler。下面是一个示例代码:
```python
import numpy as np
# 创建一个示例数组
arr = np.array([[1, 2, 3, 4],
[5, 6, 7, 8],
[9, 10, 11, 12]])
# 提取除第一列之外的列
cols_to_scale = arr[:, 1:]
# 计算每列的最小值和最大值
min_vals = np.min(cols_to_scale, axis=0)
max_vals = np.max(cols_to_scale, axis=0)
# 对除第一列之外的列进行MinMaxScaler
scaled_cols = (cols_to_scale - min_vals) / (max_vals - min_vals)
# 将MinMaxScaler后的列与第一列重新组合成数组
scaled_arr = np.column_stack((arr[:, 0], scaled_cols))
print(scaled_arr)
```
这个示例代码会输出以下结果:
```
[[ 1. 0. 0. 0. ]
[ 5. 0.5 0.5 0.5]
[ 9. 1. 1. 1. ]]
```
在这个示例中,我们首先提取了除第一列之外的所有列,然后分别计算了每列的最小值和最大值。接下来,我们使用MinMaxScaler公式将每列进行缩放,并将结果与第一列重新组合成最终的数组。
阅读全文