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生成验证码实例
Aug 21 Python
Python作用域用法实例详解
Mar 15 Python
Anaconda2 5.2.0安装使用图文教程
Sep 19 Python
python 使用sys.stdin和fileinput读入标准输入的方法
Oct 17 Python
Python批量删除只保留最近几天table的代码实例
Apr 01 Python
Python数据持久化存储实现方法分析
Dec 21 Python
Flask 上传自定义头像的实例详解
Jan 09 Python
Python使用uuid库生成唯一标识ID
Feb 12 Python
几款Python编译器比较与推荐(小结)
Oct 15 Python
python中re模块知识点总结
Jan 17 Python
python 爬取腾讯视频评论的实现步骤
Feb 18 Python
python工具dtreeviz决策树可视化和模型可解释性
Mar 03 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 strtotime 函数UNIX时间戳
2009/01/14 PHP
PHP 强制性文件下载功能的函数代码(任意文件格式)
2010/05/26 PHP
关于UEditor编辑器远程图片上传失败的解决办法
2012/08/31 PHP
PHP命令行脚本接收传入参数的三种方式
2014/08/20 PHP
前端必学之PHP语法基础
2016/01/01 PHP
Yii操作数据库实现动态获取表名的方法
2016/03/29 PHP
PHP中CheckBox多选框上传失败的代码写法
2017/02/13 PHP
tp5框架基于ajax实现异步删除图片的方法示例
2020/02/10 PHP
php的无刷新操作实现方法分析
2020/02/28 PHP
用js判断浏览器是否是IE的比较好的办法
2007/05/08 Javascript
JQuery Study Notes 学习笔记(一)
2010/08/04 Javascript
js解决弹窗问题实现班级跳转DIV示例
2014/01/06 Javascript
使用纯javascript实现经典扫雷游戏
2015/04/23 Javascript
在vue中实现简单页面逆传值的方法
2017/11/27 Javascript
nodeJS微信分享
2017/12/20 NodeJs
JS匿名函数和匿名自执行函数概念与用法分析
2018/03/16 Javascript
react-native封装插件swiper的使用方法
2018/03/20 Javascript
AngularJS使用Filter自定义过滤器控制ng-repeat去除重复功能示例
2018/04/21 Javascript
超好用的jQuery分页插件jpaginate用法示例【附源码下载】
2018/12/06 jQuery
详解微信小程序-扫一扫 wx.scanCode() 扫码大变身
2019/04/30 Javascript
JS 获取文件后缀,判断文件类型(比如是否为图片格式)
2020/05/09 Javascript
python 生成目录树及显示文件大小的代码
2009/07/23 Python
Python3控制路由器——使用requests重启极路由.py
2016/05/11 Python
200行自定义python异步非阻塞Web框架
2017/03/15 Python
Python对列表去重的多种方法(四种方法)
2017/12/05 Python
利用Python实现Excel的文件间的数据匹配功能
2020/06/16 Python
Python读取yaml文件的详细教程
2020/07/21 Python
Python 实现一个计时器
2020/07/28 Python
容易被忽略的Python内置类型
2020/09/03 Python
python 决策树算法的实现
2020/10/09 Python
HTML5所有标签汇总及标签意义解释
2015/03/12 HTML / CSS
MySQL面试题
2014/01/12 面试题
员工保密承诺书
2014/05/28 职场文书
2014公司党员自我评价范文
2014/09/11 职场文书
检讨书格式
2015/05/07 职场文书
民事辩护词范文
2015/05/21 职场文书