numpy库中一些函数的操作:
1、tile(A,size) 是将A进行复制,得到尺寸为size的元组:
B = np.array([1, 4, 9])
result = tile(B, [2, 3])
print(result)
结果:
[[1 4 9 1 4 9 1 4 9]
[1 4 9 1 4 9 1 4 9]]
2、sum()的用法
A.sum() 求的是数组中所有元素之和,A.sum(axis=0) 求的是A中的列和,A.sum(axis=1) 求的是A中行和;
A = np.array([[1, 4, 9], [1, 1, 1], [2, 1, 4]])
s1 = A.sum()
s2 = A.sum(axis=0)
s3 = A.sum(axis=1)
结果:
24
[ 4 6 14]
[14 3 7]
3、B.argsort() 或写成 np.argsort(B) 是对数组中元素进行升序排列,并返回排序后元素原有列表中元素对应的索引。
B = np.array([1, 4, 2, 5, 3])
result = B.argsort()
print(result)
print(B[result])
结果:
[0 2 4 1 3]
[1 2 3 4 5]
4、字典中dic1.get(key,default)函数的用法:
返回dic1中关键字key所对应的的value值,若字典中没有关键字key,返回default;
default默认为None,也可以自行设置!
5、operator.itemgetter(num)函数
b = operator.itemgetter(0) 返回的是一个函数:operator.itemgetter(0) ,表明是对对象的第num维数据进行操作,调用b(A) 表明是对列表A的第0维数据进行操作;
import operator
A = [1, 2, 3]
b = operator.itemgetter(0)
print(b)
print(b(A))
结果:
operator.itemgetter(0)
1
除此之外,在sorted() 函数中也常用到 operator.itemgetter(num),如下所示:
import operator
dic1 = {'JJ': 40, 'Jay': 42, 'Bu': 24}
# 将字典转换为列表
b = dic1.items()
result = sorted(b, key=operator.itemgetter(1), reverse=True)
print(result)
结果:
[('Jay', 42), ('JJ', 40), ('Bu', 24)]
表示对b的第1维数据进行降序排列;
其中 b 为:dict_items([('JJ', 40), ('Jay', 42), ('Bu', 24)])