numpy的基本操作

数组的创建

# 创建数组
import numpy as np

np.array([1, 0, 1, 0, 1, 0], dtype=np.bool)
np.array([1, 2, 3, 4, 5, 6])
np.array(range(1, 7))
np.array(1, 7)

数组的形状操作

# 数组的计算
a = np.array([1, 2, 3, 4, 5, 6])
b = np.array([6, 5, 4, 3, 2, 1])
a.reshape(2, 3)
b.reshape(2, 3)
c = a+b
d = a-b
e = a*b
f = a/b
# 对数组的所有元素进行操作
x = a+1

广播原则

如果两个数组的后缘维度(trailing dimension,即从末尾开始算起的维度)的轴长度相符或其中一方的长度为1,则认为它们是广播兼容的。广播会在缺失和(或)长度为1的维度上进行。
怎么理解呢?
可以把维度指的是shape所对应的数字个数
那么问题来了:
shape为(3,3,3)的数组能够和(3,2)的数组进行计算么?
shape为(3,3,2)的数组能够和(3,2)的数组进行计算么?
有什么好处呢?
举个例子:每列的数据减去列的平均值的结果

数组的索引、切片、裁剪、转换、拼接

# numpy的索引和切片
a[1] # 取第一行
a[:,1]# 取第一列
a[1:3]# 取多行
a[,1:3]# 取多列
# 数组的剪裁
a.clip(3, 5)# 数组中的数据小于3的改为3,大于5改为5
# 数组行列切换
a.swapaxes(1, 0)
# 数组的拼接
np.hstack(a, b)#水平拼接
np.vstack(a, b)#垂直拼接

numpy中常见函数

求和:t.sum(axis=None)
均值:t.mean(a,axis=None)  受离群点的影响较大
中值:np.median(t,axis=None)
最大值:t.max(axis=None)
最小值:t.min(axis=None)
极值:np.ptp(t,axis=None) 即最大值和最小值只差
标准差:t.std(axis=None) 

numpy的其它方法

获取最大值最小值的位置
  np.argmax(t,axis=0)
  np.argmin(t,axis=1)
创建一个全0的数组: np.zeros((3,4))
创建一个全1的数组:np.ones((3,4))
创建一个对角线为1的正方形数组(方阵):np.eye(3)
 

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

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值