批改及建议
4. 正确但不够规范
应用np.eye(3)
或np.identity(3)
生成单位矩阵,避免手动输入。
5. 范围错误
np.arange(0,100,20)
生成 [0,20,40,60,80]
(不包含100)。应用 np.linspace(0,100,5)
得到 [0,25,50,75,100]
。
6. 未完成
正确代码:
arr6 = np.array([1,2,3]).reshape(3,1) # 或 [:, np.newaxis]
7. 未完成
正确代码:
arr7 = np.random.rand(5,5)
8. 错误
arr5 = float(arr5)
会报错(数组不能直接转float)。应:
arr5 = arr5.astype(np.float64)
9. 未完成
正确方法:
arr4_flat = arr4.flatten() # 或 arr4.ravel()
10. 错误
列表没有 .describe
方法,应使用 NumPy 函数:
print(np.sum(arr7), np.mean(arr7), np.std(arr7))
11-12. 未完成
- 水平堆叠:
np.hstack((arr1, arr2))
- 垂直堆叠:
np.vstack((arr1, arr2))
13. 未完成
正确代码:
arr13 = np.array([1,2,3,4])[::-1] # 或 np.flip(arr)
14. 部分正确
若 arr14
是列表,.max()
和 .min()
有效;建议转为 NumPy 数组更规范。
15. 错误
正确代码:
arr15 = np.array([True, False, True]).astype(int)
16. 未完成
正确代码:
arr16 = np.round([1.2, 3.5, 5.7])
17. 语法错误
正确代码:
arr17 = np.ones((2