numpy按行打乱数据
时间: 2024-06-13 14:02:12 浏览: 171
Python中对数组集进行按行打乱shuffle的方法
在NumPy中,如果你想按照行对数组进行随机打乱,你可以使用`numpy.random.shuffle()`函数。这个函数直接作用于输入的数组,并就地(in-place)改变数据,使得每一行的元素顺序被打乱。但是需要注意的是,`shuffle()`只适用于一维数组或数组的扁平化版本,如果你有一个二维数组(即矩阵),你需要先将其转为一维再进行打乱,然后再转换回二维。
以下是步骤的示例:
```python
import numpy as np
# 假设你有一个二维数组
data = np.array([[1, 2, 3], [4, 5, 6], [7, 8, 9]])
# 将二维数组转为一维
flattened_data = data.flatten()
# 随机打乱一维数据
np.random.shuffle(flattened_data)
# 再将打乱后的数据恢复为二维
shuffled_data = flattened_data.reshape(data.shape)
print(shuffled_data)
```
阅读全文