一、老师问题的回答:
1.1 效率比较
Python中的 list 保存的是对象的指针,因此数据量大时很占内存,所以会慢。
NumPy 数组存储在一个均匀连续的内存块中,这样数组计算遍历所有的元素,不像列表 list 还需要对内存地址进行查找,从而节省了计算资源,比较快。
1.2 其他数据类型
例如字典dict、树、图、等等
二、我的云笔记链接(基本所有代码都验证了一遍):http://note.youdao.com/noteshare?id=dc330cd14b6a354f34167f8e33774177&sub=39A110D2D15A47189E2D33C0051A6F0E
三、就我感觉老师你在amin()和amax()那里的解释错了?还是说我理解错了?
amin()时:
axis=0所选元素应该是[1,4,7], [2,5,8], [3,6,9],然后再选择每一数组中最小的那个值,也即[1,2,3];
axis=1所选元素应该是[1,2,3], [4,5,6], [7,8,9],然后再选择每一数组中最小的那个值,也即[1,4,7];
也就是说,axis=0 是列运算;axis=1 是行运算。
以下是我的代码验证:
------------------------------------------------------------------------------------------------
import numpy as np
a = np.array([[1,6,3], [4,5,6], [100,8,9]])
print(a,'\n')
print(np.amin(a)) # amin(a) 指的是数组中全部元素的最小值
print(np.amin(a,axis=0)) # axis=0 轴是把元素看成了 [1,4,100], [6,5,8], [3,6,9] 三个元素
print(np.amin(a,axis=1),'\n') # axis=1 轴是把元素看成了 [1,6,3], [4,5,6], [100,8,9] 三个元素
print(np.amax(a))
print(np.amax(a,axis=0))
print(np.amax(a,axis=1))
# amin() 用于计算数组中的元素沿指定轴的最小值
# amax() 用于计算数组中的元素沿指定轴的最大值
------------------------------------------------------------------------------------------------
结果:
[[ 1 6 3]
[ 4 5 6]
[100 8 9]]
1
[1 5 3]
[1 4 8]
100
[100 8 9]
[ 6 6 100]
------------------------------------------------------------------------------------------------
作业题我今晚再更新在我的云笔记中,以上。
展开