《深度学习与图像识别:原理与实践》—2.3.3 获取Numpy属性

举报
华章计算机 发表于 2019/07/24 20:14:12 2019/07/24
【摘要】 本节书摘来自华章计算机《深度学习与图像识别:原理与实践》一书中的第2章,第2.3.3节,作者是魏溪含 涂铭 张修鹏。

2.3.3 获取Numpy属性

首先,我们通过Numpy中的一个方法arange(n),生成0到n-1的数组。比如,我们输入np.arange(15),可以看到返回的结果是array([ 0, 1, 2, 3, 4, 5, 6, 7,  8, 9, 10, 11, 12, 13, 14])。

然后,再通过Numpy中的reshape(row,column)方法,自动构架一个多行多列的array对象。

比如,我们输入:

a = np.arange(15).reshape(3,5)          #代表3行5列

可以看到结果:

array([[ 0,  1,  2,  3,  4],

       [ 5,  6,  7,  8,  9],

       [10, 11, 12, 13, 14]])

有了基本数据之后,我们就可以通过Numpy提供的shape属性获取Numpy数组的行数与列数,示例代码如下:

print(a.shape)

可以看到返回的结果是一个元组(tuple),第一个3代表的是3行,第二个5代表的是5列:

(3, 5)

轮到你来:

使用arange和reshape方法自定义一个Numpy数组,最后通过Python中的print方法打印出数组的shape值(返回的应该是一个元组类型)。

我们可以通过.ndim来获取Numpy数组的维度,示例代码如下:

importnumpy as np

x = np.arange(15)

print(x.ndim)         #输出x向量的维度,这时能看到的维度是1维

X = x.reshape(3,5) #将x向量转为三行五列的二维矩阵

Print(X.ndim)         #输出X矩阵的维度,这时能看到的维度是2维

reshape方法的特别用法

如果只关心需要多少行或者多少列,其他由计算机自己来算,那么这个时候我们可以使用如下方法:

x.reshape(15,-1)    #我关心的是我只要15行,列由计算机自己来算

x.reshape(-1,15)    #我关心的是我只要15列,行由计算机自己来算


【版权声明】本文为华为云社区用户转载文章,如果您发现本社区中有涉嫌抄袭的内容,欢迎发送邮件进行举报,并提供相关证据,一经查实,本社区将立刻删除涉嫌侵权内容,举报邮箱: cloudbbs@huaweicloud.com
  • 点赞
  • 收藏
  • 关注作者

评论(0

0/1000
抱歉,系统识别当前为高风险访问,暂不支持该操作

全部回复

上滑加载中

设置昵称

在此一键设置昵称,即可参与社区互动!

*长度不超过10个汉字或20个英文字符,设置后3个月内不可修改。

*长度不超过10个汉字或20个英文字符,设置后3个月内不可修改。