numpy自动生成数组详解


Posted in Python onDecember 15, 2017

1 np.arange(),类似于range,通过指定开始值,终值和步长来创建表示等差数列的一维数组,注意该函数和range一样结果不包含终值。

>>> np.arange(10)
array([0, 1, 2, 3, 4, 5, 6, 7, 8, 9])
>>> np.arange(0,1,0.1)
array([ 0. , 0.1, 0.2, 0.3, 0.4, 0.5, 0.6, 0.7, 0.8, 0.9])
>>>

2 np.linspace()函数,与上面np.arange不同的是,该函数第三个参数指定的是元素个数,它表示给定起始值和终点值以及元素个数,生成一个一维的等差数列。含有参数endpoint布尔值,默认为True表示包含终值,设定为False表示不包含终值。

>>> np.linspace(0,1,10)
array([ 0.    , 0.11111111, 0.22222222, 0.33333333, 0.44444444,
    0.55555556, 0.66666667, 0.77777778, 0.88888889, 1.    ])
>>> np.linspace(0,1,10,endpoint = False)
array([ 0. , 0.1, 0.2, 0.3, 0.4, 0.5, 0.6, 0.7, 0.8, 0.9])

3 np.logspace,该函数与np.linspace类似,不过它生成的数组是等比数列,基数默认为10

>>> np.logspace(0,4,5)
array([ 1.00000000e+00,  1.00000000e+01,  1.00000000e+02,
     1.00000000e+03,  1.00000000e+04])

但是基数也可以改变,例如将基数base = 2,如下:

>>> np.logspace(0,3,5,base = 2)
array([ 1. , 1.68179283, 2.82842712, 4.75682846, 8. ])

上面表示,起点为2^0 = 1,终点为2^3 = 8,一共按照等比数列生成5个点,这样公比q = 2^(3/4)

4. np.zeros(),np.ones(),np.empty()可以创建指定的形状和类型数组,其中np.enpty()只分配数组所使用的内存,不对数据初始化起作用。

>>> np.empty((2,3),np.int32)
array([[ 8078112, 37431728, 8078112],
    [47828800, 47828712,    10]])

注意上面创建的2*3的数组并没有被初始化。

>>> np.ones(4)
array([ 1., 1., 1., 1.])
>>> np.ones((2,3))
array([[ 1., 1., 1.],
    [ 1., 1., 1.]])
>>> np.ones(4,dtype = np.bool)
array([ True, True, True, True], dtype=bool)
>>> np.zeros(4,dtype = np.bool)
array([False, False, False, False], dtype=bool)
>>> np.zeros(4)
array([ 0., 0., 0., 0.])

np.full()函数可以生成初始化为指定值的数组

>> np.full(4,np.pi)
array([ 3.14159265, 3.14159265, 3.14159265, 3.14159265])
>>> np.full((2,3),np.pi)
array([[ 3.14159265, 3.14159265, 3.14159265],
    [ 3.14159265, 3.14159265, 3.14159265]])

此外np.zeros_like(),np.ones_like()等函数创建于参数形状相同的数组即np.zeros_like(a)与np.zeros(a.shape,dtype = a.type)相同

>>> a = np.arange(10).reshape(2,5)
>>> np.zeros_like(a)
array([[0, 0, 0, 0, 0],
    [0, 0, 0, 0, 0]])

5 np.fromfunction(),它可以从指定的函数中生成数组,第一个参数是函数名称,第二个参数是数组形状。 

>>> np.fromfunction(lambda a,b:a == b,(3,3))
array([[ True, False, False],
    [False, True, False],
    [False, False, True]], dtype=bool)
>>> np.fromfunction(lambda i:i%7 +1,(10,))
array([ 1., 2., 3., 4., 5., 6., 7., 1., 2., 3.])

总结

以上就是本文关于numpy自动生成数组详解的全部内容,希望对大家有所帮助。感兴趣的朋友可以继续参阅本站其他相关专题,如有不足之处,欢迎留言指出。感谢朋友们对本站的支持!

Python 相关文章推荐
实例讲解python函数式编程
Jun 09 Python
Python命名空间详解
Aug 18 Python
Python列表和元组的定义与使用操作示例
Jul 26 Python
实例讲解Python中整数的最大值输出
Mar 17 Python
PyCharm2019安装教程及其使用(图文教程)
Sep 29 Python
Python调用Windows命令打印文件
Feb 07 Python
python3将变量写入SQL语句的实现方式
Mar 02 Python
Python eval函数原理及用法解析
Nov 14 Python
python通过cython加密代码
Dec 11 Python
Python实现曲线拟合的最小二乘法
Feb 19 Python
python设置 matplotlib 正确显示中文的四种方式
May 10 Python
python中的random模块和相关函数详解
Apr 22 Python
Python3实现发送QQ邮件功能(附件)
Dec 23 #Python
numpy排序与集合运算用法示例
Dec 15 #Python
Python3实现发送QQ邮件功能(html)
Dec 15 #Python
Python3实现发送QQ邮件功能(文本)
Dec 15 #Python
numpy数组拼接简单示例
Dec 15 #Python
浅谈numpy数组的几种排序方式
Dec 15 #Python
Python多线程爬虫实战_爬取糗事百科段子的实例
Dec 15 #Python
You might like
PHP简单系统数据添加以及数据删除模块源文件下载
2008/06/07 PHP
网页的分页下标生成代码(PHP后端方法)
2016/02/03 PHP
PHP读取大文件的多种方法介绍
2016/04/04 PHP
jQuery性能优化28条建议你值得借鉴
2013/02/16 Javascript
浏览器的JavaScript引擎的识别方法
2013/10/20 Javascript
js实现的GridView即表头固定表体有滚动条且可滚动
2014/02/19 Javascript
Bootstrap编写一个在当前网页弹出可关闭的对话框 非弹窗
2016/06/30 Javascript
BOM系列第三篇之定时器应用(时钟、倒计时、秒表和闹钟)
2016/08/17 Javascript
JavaScript构建自己的对象示例
2016/11/29 Javascript
浅析上传头像示例及其注意事项
2016/12/14 Javascript
jQuery插件zTree实现的多选树效果示例
2017/03/08 Javascript
vue货币过滤器的实现方法
2017/04/01 Javascript
JavaScript通过改变文字透明度实现的文字闪烁效果实例
2017/04/27 Javascript
原生JS实现N级菜单的代码
2017/05/21 Javascript
使用 Node.js 对文本内容分词和关键词抽取
2017/05/27 Javascript
封装运动框架实战左右与上下滑动的焦点轮播图(实例)
2017/10/17 Javascript
使用Angular CLI生成 Angular 5项目教程详解
2018/03/18 Javascript
vue.js实现的幻灯片功能示例
2019/01/18 Javascript
JavaScript实现网页tab栏效果制作
2020/11/20 Javascript
[00:31]DOTA2上海特级锦标赛 Fnatic战队宣传片
2016/03/04 DOTA
python开发之thread线程基础实例入门
2015/11/11 Python
python读文件保存到字典,修改字典并写入新文件的实例
2018/04/23 Python
python Pexpect 实现输密码 scp 拷贝的方法
2019/01/03 Python
python批量替换文件名中的共同字符实例
2020/03/05 Python
Anaconda和ipython环境适配的实现
2020/04/22 Python
pytorch实现查看当前学习率
2020/06/24 Python
施华洛世奇天猫官方旗舰店:SWAROVSKI
2017/04/17 全球购物
英国赛车、汽车改装和摩托车零件购物网站:Demon Tweeks
2018/10/29 全球购物
SQL Server面试题
2016/10/17 面试题
一道输出判断型Java面试题
2014/10/01 面试题
农业大学毕业生的个人自我评价
2013/10/11 职场文书
鞋类设计与工艺专业销售求职信
2013/11/01 职场文书
机电一体化应届生求职信范文
2014/01/24 职场文书
军训自我鉴定200字
2014/02/13 职场文书
预备党员2014全国两会学习心得体会
2014/03/10 职场文书
volatile保证可见性及重排序方法
2022/08/05 Java/Android