欢迎您访问程序员文章站本站旨在为大家提供分享程序员计算机编程知识!
您现在的位置是: 首页

Numpy学习入门II

程序员文章站 2023-12-27 18:11:39
...

Numpy学习入门(二)

ndarray数组转置

转置常见有两种方式,分别是:

  • .transpose()方法
  • .T属性

主要以二维数组为例,更高维的数组,目前还没有碰到应用的地方,暂时忽略。

>>> a = np.random.randn(3,3)
>>> a
array([[ 0.35475875, -1.10115755, -1.57129844],
       [-0.24260662, -0.1518372 , -0.01773038],
       [-0.6385935 , -0.8845019 , -1.17398045]])
>>> a.T
array([[ 0.35475875, -0.24260662, -0.6385935 ],
       [-1.10115755, -0.1518372 , -0.8845019 ],
       [-1.57129844, -0.01773038, -1.17398045]])
>>> a.transpose()
array([[ 0.35475875, -0.24260662, -0.6385935 ],
       [-1.10115755, -0.1518372 , -0.8845019 ],
       [-1.57129844, -0.01773038, -1.17398045]])

注意:

  • 转置得到的是原数组的视图,而不是复制
>>> b = a.T
>>> b
array([[ 0.35475875, -0.24260662, -0.6385935 ],
       [-1.10115755, -0.1518372 , -0.8845019 ],
       [-1.57129844, -0.01773038, -1.17398045]])
>>> b[b<0]=0
>>> b
array([[0.35475875, 0.        , 0.        ],
       [0.        , 0.        , 0.        ],
       [0.        , 0.        , 0.        ]])
>>> a
array([[0.35475875, 0.        , 0.        ],
       [0.        , 0.        , 0.        ],
       [0.        , 0.        , 0.        ]])

Numpy中的通用函数ufunc

Numpy中的ufunc函数指的是执行元素级运算的函数,即对每个元素完成相同的运算。包括一元运算和二元运算,其中二元运算一般要求两个ndarray的shape是一致的。
一元运算ufunc包括

函数 说明
abs, fabs 整数、浮点数、复数的绝对值,若不是复数,fabs运算更快
sqrt 平方根
square 平方
exp 以e为底的指数
log, log10, log2, long1p 各个对数
sign 符号函数,1正数,0,-1负数
ceil, floor 上、下取整
rint 四舍五入取整
modf 将小数和整数部分以独立的数组返回
isnan, isfinite, isinf 是否为NaN,是否有穷,是否无穷
cos, cosh, sin, sinh, tan, tanh 三角函数
arccos, arccosh, arcsin, arcsinh, arctan, arctanh 反三角函数
logical_not 逻辑非,相当于~

二元运算ufunc包括

函数 说明
add, substract, multiply, divide 加、减、乘、除,其实已经重载了+ - * /
power 乘方
maximum, fmax, minmum, fmin 最大,最小,其中fmax和fmin将忽略NaN
floor_divide, mode 整除和取模
copysign 将第一个的符号复制给第二个数组
greater, greater_equal, less, less_equal, equal, not_equal 比较运算
logical_and, logical_or, logical_xor 逻辑与、或、异或,已重载&、|、^
相关标签: python numpy

上一篇:

下一篇: