Numpy学习笔记

方法介绍
名称介绍
object.ndim返回维度
np.vstack([a, b])竖向合并
np.hstack([a, b])水平合并
np.concatenate([……])合并多个数组,第一个参数是数组,第二个是维度
object.size获取数据个数或大小
np.vsplit(a,indices_or_sections=2)横向切分,均分2段
np.split(a,indices_or_sections=[2,3],axis=1)纵向切分,分片成 [:2],[2:3], [3:],第三个参数是维度
object.shape[]object.shape[0]表示第一个维度,行。object.shape[1]表示第二个维度,列。
np.where()按条件选择、替换数据,如np.where(condition, a, b)
a.dot(b)&np.dot(a, b)矩阵点积运算
b.T把 b 做一次转置
a.min()&np.max(a)获取a中最小值
a.sum()a中所有数据相加
a.prod()a中所有数据累乘
a.sizea中数据总数
np.count_nonzero(a)a中非零总数
np.mean(a)平均数
np.median(a)中位数
np.std(a)标准差
np.argmax(a)最大值索引
np.argmin(a)最小值索引
np.ceil(a)向上取整,天花板的值
np.floor(a)向下取整,地板的值
a.clip(start,end)用于上下界限的值截取
reshape(x,y)改变形态
np.expand_dims(a, axis=1)可用于扩展维度
np.squeeze(a)实现对数组 a 维度的减少
a.T&np.transpose(a)矩阵转置
np.column_stack([……])列合并
np.row_stack([……])行合并
object.strip()删除字符前后的字符,默认为空格、换行等符号
numpy.argwhere()用于查找按元素分组的非零数组元素的索引。
np.zeros()可以生成全0的矩阵
np.ones()可以生成全1的矩阵
np.full()可以生成任意数字的矩阵
np.ones_like(data)创建一个和data类型一样,大小一样的另一份数据。值为1
np.zeros_like(data)创建一个和data类型一样,大小一样的另一份数据。值为0
np.full_like(data, 6)创建一个和data类型一样,大小一样的另一份数据。值为6
np.arange(3, 10, 2)范围做自定义更变或跳跃取值
np.linspace(-1, 1, 5)创建四个区域,五个点
np.linspace(-1, 1, 5, endpoint=False)创建五个区域,五个点
np.identity(n,dtype=None)n*n的主对角线为1,其余地方为0的数组,对角阵
np.eye()生成m*n的矩阵,第一个参数为N、第二个参数为M、第三个参数为对角1上下多少位、第四个参数为dtype。
np.logspace(start, stop, num=50, endpoint=True, base=10.0, dtype=None, axis=0)构造等比数列
np.empty()可以快速生成矩阵数据
np.empty_like()和 np.zeros_like() 这种类似
np.random().rand(dim1,dim2)可以生成array类型的随机数组。
np.random.random([dim1, dim2])和rand类似,仅仅输入参数类型有点区别。
np.random.randn(dim1,dim2)按照标准正态分布生成数组
np.random.randint(low=-3, high=6, size=100)low和high是上下限,size是生成多少个。
np.random.choice(data)随机从一组数据中选择,第二个参数为大小,第三个参数保证随机结果无重复
np.copy(data)复制数据,浅复制
np.random.shuffle(data)将源数据洗牌重新排列,直接一个方法,无返回值
np.random.permutation(10))生成乱序的0-10的数据,若传入数组,对数组进行乱序排序
np.random.normal(1, 0.2, 10)正态分布,均值,方差,数量
np.random.uniform(-1, 1, 10)均匀分布
np.random.seed(1)随机种子下的随机数据是固定的随机数据
np.flatten() &np.ravel()都用于矩阵展平,但是ravel更快
np.take(a, indices, axis=0)利用索引取出数据,比index更快
np.compress(mask, a, axis=0)使用 np.compress(), 替代用 mask 选数据的方法。
np.add(b, 1, out=b)out 可以减少 copy 的产生
特殊内容

改变形态:

a = np.array([1,2,3,4,5,6])
a_2d = a[np.newaxis, :]
print(a_2d.shape)
## (1, 6)

a_none = a[:, None]
a_expand = np.expand_dims(a, axis=1)
print(a_none.shape, a_expand.shape)
## (6, 1) (6, 1)

# 减小维度
# 只能减少那些维度 shape 上为 1 的维度

特殊内容

View 相当于浅复制
Copy 相当于深复制

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

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值