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 相关文章推荐
9种python web 程序的部署方式小结
Jun 30 Python
python在windows下实现ping操作并接收返回信息的方法
Mar 20 Python
简单介绍Python中的round()方法
May 15 Python
Python标准库06之子进程 (subprocess包) 详解
Dec 07 Python
解决Python中定时任务线程无法自动退出的问题
Feb 18 Python
Python写一个基于MD5的文件监听程序
Mar 11 Python
对Python强大的可变参数传递机制详解
Jun 13 Python
python获取网络图片方法及整理过程详解
Dec 20 Python
PyTorch和Keras计算模型参数的例子
Jan 02 Python
Ranorex通过Python将报告发送到邮箱的方法
Jan 12 Python
Python如何读取文件中图片格式
Jan 13 Python
在TensorFlow中屏蔽warning的方式
Feb 04 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
smarty中改进truncate使其支持中文的方法
2016/05/30 PHP
jQuery.clean使用方法及思路分析
2013/01/07 Javascript
Query中click(),bind(),live(),delegate()的区别
2013/11/19 Javascript
JS 日期比较大小的简单实例
2014/01/13 Javascript
angularjs 处理多个异步请求方法汇总
2015/01/06 Javascript
jQuery实现时尚漂亮的弹出式对话框实例
2015/08/07 Javascript
javascript实现拖动元素交换位置
2015/11/29 Javascript
checkbox 选中一个另一个checkbox也会选中的实现代码
2016/07/09 Javascript
JS基础随笔(菜鸟必看篇)
2016/07/13 Javascript
详解jQuery停止动画——stop()方法的使用
2016/12/14 Javascript
微信小程序 Tab页切换更新数据
2017/01/05 Javascript
JS实现iframe自适应高度的方法示例
2017/01/07 Javascript
微信小程序滚动Tab实现左右可滑动切换
2017/08/17 Javascript
提升页面加载速度的插件InstantClick
2017/09/12 Javascript
vue组件中watch props根据v-if动态判断并挂载DOM的问题
2019/05/12 Javascript
swiper Scrollbar滚动条组件详解
2019/09/08 Javascript
axios实现简单文件上传功能
2019/09/25 Javascript
vue相同路由跳转强制刷新该路由组件操作
2020/08/05 Javascript
[03:59]5分钟带你了解什么是DOTA2(第二期)
2017/02/07 DOTA
python定向爬取淘宝商品价格
2018/02/27 Python
Tensorflow 合并通道及加载子模型的方法
2018/07/26 Python
python中的json总结
2018/10/11 Python
python实现的按要求生成手机号功能示例
2019/10/08 Python
python2和python3哪个使用率高
2020/06/23 Python
Python爬虫自动化获取华图和粉笔网站的错题(推荐)
2021/01/08 Python
基于HTML5的WebGL经典3D虚拟机房漫游动画
2017/11/15 HTML / CSS
详解px单位html5响应式方案
2018/03/08 HTML / CSS
玩具反斗城天猫官方旗舰店:享誉全球的玩具店
2017/10/10 全球购物
早会主持词
2014/03/17 职场文书
政府信息公开实施方案
2014/05/09 职场文书
超市客服工作职责
2014/06/11 职场文书
学习党的群众路线教育实践活动剖析材料
2014/10/13 职场文书
旷工检讨书1000字
2015/01/01 职场文书
2015年信贷员工作总结
2015/04/28 职场文书
vue+element ui实现锚点定位
2021/06/29 Vue.js
Go中使用gjson来操作JSON数据的实现
2022/08/14 Golang