python numpy数组计算

1.numpy的创建方法:
     np.array()   #将列表转化为数组的方法

     np.arange() #range的numpy版,迭代的生成numpy对象

    np.linspace()  #在一定的范围内,限定数组长度,生成数组

   np.zeros() #生成全零数组

   np.ones() #生成全1数组

   np.empty() #根据指形状创建空数组

   np.eye() #创建单位矩阵的数组

 np.ndindex() :用于输出数组中每个点的坐标

np.max():取最大值

np.min()

np.mean()取平均值

np.prod():求所有元素的乘积

np.std():求标准差


2.数组和标量之间的运算:

对于数组a:
a+1 表示数组的每一个元素都加一

a*3 表示数组的每个元素都乘于3

a**2 表示对a中的每个元素都开方

数组切片:
对于一维数组:a[1],  a[1:4],  a[:4],  a[4:]

对于二维数组:a[1:2,3:5],  a[:,1:3],  a[:,1]


3. *numpy中布尔类型的索引:

例如:对于数组a, 选出所有大于5的数:

a=a[a>5]

原理:

a>5 会对a中的每个元素进行判断,并返回一个布尔数组

布尔型索引:将同样大小的布尔数组传入索引,会返回一个由所有True对应位置的元素组成的数组

同理:  返回一个数组,使得所有的元素大于5且为偶数:
a[(a>5) & (a%2==0)]


4. a=np.array(['a','b','c','d','e'])

b=a[[1,3,4]]  #对于数组a,选出其中的第1,3,4个元素,组成新的数组,新的数组仍为numpy类型

b=[:,[1,3]]  #对于多维数组的花样式切片索引


5.numpy.random子包中的常用函数:

6. np.unravel_index(indices, dims): 返回indices中的元素在dims维度的数组上的索引值,按默认元组的方式返回。

例如:

np.unravel_index(indices = [22, 41, 37], dims = (7,6)) : 返回的是元祖(array([3,6,6]), array([4, 5, 1]))

7.np.spacing(1):产生一个无穷小的随机数

8.numpy中的内置类型转化为方法:a = a.astype(b.dtype) #把a转化为b的类型

9. numpy中的广播机制:当两个多维数组相加或者相乘时,如果他们的维度不相同,再对应的不相同的维度上只要有一个矩阵的该维度值为1,则就可以进行广播机制。

例如:a.shape为:(2,3,1,5,1)

          b.shape为:(1,3,4,5,2):表示可以进行广播机制;

10:np.tile()和np.repeat()都可以对array进行重复操作,但np.tile()是以axis为最小单位(axis-wise)进行重复的,而np.repeat()是以element为最小单位(element-wise)进行重复的

 

  • 0
    点赞
  • 5
    收藏
    觉得还不错? 一键收藏
  • 1
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值