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中特殊函数集锦
Jul 27 Python
python&MongoDB爬取图书馆借阅记录
Feb 05 Python
Python极简代码实现杨辉三角示例代码
Nov 15 Python
pygame实现弹力球及其变速效果
Jul 03 Python
python 读文件,然后转化为矩阵的实例
Apr 23 Python
示例详解Python3 or Python2 两者之间的差异
Aug 23 Python
python 判断参数为Nonetype类型或空的实例
Oct 30 Python
Python爬虫实现vip电影下载的示例代码
Apr 20 Python
BeautifulSoup获取指定class样式的div的实现
Dec 07 Python
pycharm 如何取消连按两下shift出现的全局搜索
Jan 15 Python
Python接口自动化系列之unittest结合ddt的使用教程详解
Feb 23 Python
浅谈Python数学建模之数据导入
Jun 23 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
BBS(php & mysql)完整版(一)
2006/10/09 PHP
解析PayPal支付接口的PHP开发方式
2010/11/28 PHP
PHP FOR MYSQL 代码生成助手(根据Mysql里的字段自动生成类文件的)
2011/07/23 PHP
PHP对MongoDB[NoSQL]数据库的操作
2013/03/01 PHP
JavaScript 私有成员分析
2009/01/13 Javascript
jQuery+css实现图片滚动效果(附源码)
2013/03/18 Javascript
JS隐藏参数post传值实例
2013/04/18 Javascript
JS的千分位算法实现思路
2013/07/31 Javascript
js实现的GridView即表头固定表体有滚动条且可滚动
2014/02/19 Javascript
AngularJS入门知识之MVW类框架的编程思想探讨
2014/12/08 Javascript
jQuery中:submit选择器用法实例
2015/01/03 Javascript
angularjs表格分页功能详解
2016/01/21 Javascript
基于jquery编写分页插件
2016/03/07 Javascript
JS传递对象数组为参数给后端,后端获取的实例代码
2016/06/28 Javascript
javascript+html5+css3自定义提示窗口
2017/06/21 Javascript
浅谈nodejs中的类定义和继承的套路
2017/07/26 NodeJs
JavaScript模块详解
2017/12/18 Javascript
JavaScript 有用的代码片段和 trick
2018/02/22 Javascript
基于vue.js实现的分页
2018/03/13 Javascript
Vue中inheritAttrs的使用实例详解
2020/12/31 Vue.js
[43:43]完美世界DOTA2联赛PWL S2 LBZS vs Forest 第三场 11.29
2020/12/02 DOTA
python脚本实现分析dns日志并对受访域名排行
2014/09/18 Python
图文讲解选择排序算法的原理及在Python中的实现
2016/05/04 Python
python如何读写json数据
2018/03/21 Python
Python简单获取网卡名称及其IP地址的方法【基于psutil模块】
2018/05/24 Python
python re正则匹配网页中图片url地址的方法
2018/12/20 Python
python3.6使用tkinter实现弹跳小球游戏
2019/05/09 Python
python进度条显示-tqmd模块的实现示例
2020/08/23 Python
美国豪华时尚女性精品店:Kirna Zabête
2018/01/11 全球购物
花卉与景观设计系大学生求职信
2013/10/01 职场文书
装潢设计专业推荐信模板
2013/11/26 职场文书
导游实习生自荐书
2014/01/28 职场文书
2014学习优秀共产党员先进事迹思想汇报
2014/09/14 职场文书
青年联谊会致辞
2015/07/31 职场文书
《多彩的民间艺术》教学反思
2016/02/16 职场文书
php实现自动生成验证码的实例讲解
2021/11/17 PHP