通过列表对象[[1,2,3,4],[5,6,7,8]]构建numpy的ndarray对象,并分别进行如下操作:①对数组对象进行水平分割和垂直分割,输出每一步的计算结果;②将数组对象序列化到myArray.npy二进制文件中,读取myArray.npy二进制文件中保存的数组并输出。
时间: 2024-05-16 21:14:03 浏览: 5
首先需要导入numpy库:
```python
import numpy as np
```
然后通过列表对象[[1,2,3,4],[5,6,7,8]]构建numpy的ndarray对象:
```python
myArray = np.array([[1,2,3,4],[5,6,7,8]])
```
接下来进行水平分割和垂直分割:
```python
# 水平分割
h_split = np.hsplit(myArray, 2)
print(h_split)
# 垂直分割
v_split = np.vsplit(myArray, 2)
print(v_split)
```
输出结果如下:
```
[array([[1, 2],
[5, 6]]), array([[3, 4],
[7, 8]])]
[array([[1, 2, 3, 4]]), array([[5, 6, 7, 8]])]
```
可以看到,水平分割将原数组按列进行了分割,得到了两个形状相同的数组对象;垂直分割将原数组按行进行了分割,同样得到了两个形状相同的数组对象。
最后将数组对象序列化到myArray.npy二进制文件中,读取myArray.npy二进制文件中保存的数组并输出:
```python
# 序列化到文件
np.save("myArray.npy", myArray)
# 从文件中读取并输出
loaded_array = np.load("myArray.npy")
print(loaded_array)
```
输出结果为:
```
[[1 2 3 4]
[5 6 7 8]]
```
可以看到,读取的数组与原数组相同,说明序列化和读取操作都成功了。