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基于pyDes库实现des加密的方法
Apr 29 Python
django+js+ajax实现刷新页面的方法
May 22 Python
教你用Python写安卓游戏外挂
Jan 11 Python
Python装饰器基础概念与用法详解
Dec 22 Python
Python字符串匹配之6种方法的使用详解
Apr 08 Python
用Pytorch训练CNN(数据集MNIST,使用GPU的方法)
Aug 19 Python
Python检查图片是否损坏及图片类型是否正确过程详解
Sep 30 Python
django 模版关闭转义方式
May 14 Python
如何用Matplotlib 画三维图的示例代码
Jul 28 Python
Python爬虫代理池搭建的方法步骤
Sep 28 Python
openstack中的rpc远程调用的方法
Jul 09 Python
python模板入门教程之flask Jinja
Apr 11 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使用SAE原生Mail类实现各种类型邮件发送的方法
2016/10/10 PHP
php 删除一维数组中某一个值元素的操作方法
2018/02/01 PHP
PHP levenshtein()函数用法讲解
2019/03/08 PHP
javascript replace方法与正则表达式
2008/02/19 Javascript
jquery 多级下拉菜单核心代码
2010/05/21 Javascript
关于Ext中form移除textfield方法:hide(),setVisible(false),remove()
2010/12/02 Javascript
改进UCHOME的记录发布,增强可访问性用户体验
2011/01/17 Javascript
浅析jQuery对select操作小结(遍历option,操作option)
2013/07/04 Javascript
鼠标滑过出现预览的大图提示效果
2014/02/26 Javascript
js父页面中使用子页面的方法
2016/01/09 Javascript
javascript实现随机生成DIV背景色
2016/06/20 Javascript
Vue.js开发环境搭建
2016/11/10 Javascript
Vue概念及常见命令介绍(1)
2016/12/08 Javascript
input输入密码变黑点密文的实现方法
2017/01/09 Javascript
JS交互点击WKWebView中的图片实现预览效果
2018/01/05 Javascript
详解如何使用koa实现socket.io官网的例子
2018/11/04 Javascript
基于JavaScript canvas绘制贝塞尔曲线
2018/12/25 Javascript
微信小程序连接服务器展示MQTT数据信息的实现
2020/07/14 Javascript
JS访问对象两种方式区别解析
2020/08/29 Javascript
Python装饰器decorator用法实例
2014/11/10 Python
Python 中字符串拼接的多种方法
2018/07/30 Python
Python文件常见操作实例分析【读写、遍历】
2018/12/10 Python
安装docker-compose的两种最简方法
2019/07/30 Python
python matplotlib:plt.scatter() 大小和颜色参数详解
2020/04/14 Python
深入探究HTML5的History API
2015/07/09 HTML / CSS
蹦床仓库:Trampoline Warehouse
2018/12/06 全球购物
医院护理人员的自我评价分享
2013/10/04 职场文书
医科学校毕业生自荐信
2013/11/09 职场文书
预备党员思想汇报范文
2013/12/29 职场文书
会计与审计毕业生自荐信范文
2013/12/30 职场文书
阳光体育活动方案
2014/02/16 职场文书
货车司机岗位职责
2014/03/18 职场文书
2014入党积极分子批评与自我批评思想报告
2014/10/06 职场文书
2016元旦晚会主持词
2015/07/01 职场文书
《攀登者》:“海拔8000米以上,你不能指望任何人”
2019/11/25 职场文书
centos环境下nginx高可用集群的搭建指南
2022/07/23 Servers