3.NumPy - 数组属性
1、ndarray.shape
这一数组属性返回一个包含数组维度的元组,它也可以用于调整数组大小
# -*- coding: utf-8 -*- import numpy as np
a = np.array([[1,2,3],[4,5,6]])
print a
print "Ndarray数组的维度为:"
print a.shape print "调整数组大小--a.shape = (3,2)"
a.shape = (3,2)
print a print "调整数组大小--a.reshape = (2,3)"
a.reshape(2,3)
print a
运行结果:
[[1 2 3]
[4 5 6]]
Ndarray数组的维度为:
(2L, 3L)
调整数组大小--a.shape = (3,2)
[[1 2]
[3 4]
[5 6]]
调整数组大小--a.reshape = (2,3)
[[1 2]
[3 4]
[5 6]]
2、ndarray.ndim:返回数组的维数
ndim:返回数组的维数# -*- coding: utf-8 -*- import numpy as np
#等间隔数字的数组
a = np.arange(24)
print a #[ 0 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23]
print a.ndim #返回数组的维数:1
#现在调整其维数
b = a.reshape(2,4,3) #现在拥有三个维度:三维数组包含两个二维数组,每一个二维数组里面包含4x3的一维数组
print b
运行结果:
[ 0 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23]
1
[[[ 0 1 2]
[ 3 4 5]
[ 6 7 8]
[ 9 10 11]] [[12 13 14]
[15 16 17]
[18 19 20]
[21 22 23]]]
3、ndarray.itemsize:返回数组中每个元素的字节单位长度
itemsize:返回数组中每个元素的字节单位长度# -*- coding: utf-8 -*- import numpy as np
#数组的 dtype 为 int8(一个字节)
x = np.array([1,2,3,4,5], dtype = np.int8)
print x #[1 2 3 4 5]
print x.itemsize #:
print '-----------------------'
#数组的 dtype 现在为 float32(四个字节)
x = np.array([1,2,3,4,5], dtype = np.float32)
print x.itemsize #
4:NumPy - 数组创建
4.1:numpy.empty
numpy.empty(shape, dtype = float, order = 'C') #它创建指定形状和dtype的未初始化数组
构造器接受下列参数:
| 序号 | 参数及描述 |
|---|---|
| 1. | Shape 空数组的形状,整数或整数元组 |
| 2. | Dtype 所需的输出数组类型,可选 |
| 3. | Order 'C'为按行的 C 风格数组,'F'为按列的 Fortran 风格数组 |
import numpy as np
x = np.empty([3,2], dtype = int)
print x
运行结果:注意:数组元素为随机值,因为它们未初始化
[[1577124050 0]
[1577157920 0]
[1668244575 2645855]]
4.2:numpy.zeros:返回特定大小,以 0 填充的新数组。
numpy.zeros(shape, dtype = float, order = 'C')
构造器接受下列参数:
| 序号 | 参数及描述 |
|---|---|
| 1. | Shape 空数组的形状,整数或整数元组 |
| 2. | Dtype 所需的输出数组类型,可选 |
| 3. | Order 'C'为按行的 C 风格数组,'F'为按列的 Fortran 风格数组 |
# -*- coding: utf-8 -*- import numpy as np
#含有 5 个 0 的数组,默认类型为 float
x = np.zeros(5)
print x x = np.zeros((5,), dtype = np.int)
print x #自定义类型
x = np.zeros((2,2), dtype = [('x', 'i4'), ('y', 'i4')])
print x
[0. 0. 0. 0. 0.]
[0 0 0 0 0]
[[(0, 0) (0, 0)]
[(0, 0) (0, 0)]]
4.3:numpy.ones:返回特定大小,以 1 填充的新数组
ones:numpy.ones(shape, dtype = None, order = 'C')
构造器接受下列参数:
| 序号 | 参数及描述 |
|---|---|
| 1. | Shape 空数组的形状,整数或整数元组 |
| 2. | Dtype 所需的输出数组类型,可选 |
| 3. | Order 'C'为按行的 C 风格数组,'F'为按列的 Fortran 风格数组 |
例 1
# 含有 5 个 1 的数组,默认类型为 float
import numpy as np
x = np.ones(5) print x
输出如下:
[ 1. 1. 1. 1. 1.]
例 2
import numpy as np
x = np.ones([2,2], dtype = int)
print x
输出如下:
[[1 1]
[1 1]]
3.NumPy - 数组属性的更多相关文章
- numpy数组属性查看及断言
numpy数组属性查看:类型.尺寸.形状.维度 import numpy as np a1 = np.array([1,2,3,4],dtype=np.complex128) print(a1) ...
- NumPy数组属性
NumPy - 数组属性 这一章中,我们会讨论 NumPy 的多种数组属性. ndarray.shape 这一数组属性返回一个包含数组维度的元组,它也可以用于调整数组大小. 示例 1 import n ...
- Numpy 数组属性
Numpy 数组的维数称为秩(rank),一维数组的秩为 1 , 二维数组的秩为 2 , 以此类推:在Numpy中, 每一个线性的数组称为是一个轴(axis),也就是维度(dimensios).比如说 ...
- 3、NumPy 数组属性
1.秩.维度 NumPy 数组的维数称为秩(rank),一维数组的秩为 1,二维数组的秩为 2,以此类推. 在 NumPy中,每一个线性的数组称为是一个轴(axis),也就是维度(dimensions ...
- 吴裕雄--天生自然Numpy库学习笔记:NumPy 数组属性
NumPy 数组的维数称为秩(rank),秩就是轴的数量,即数组的维度,一维数组的秩为 1,二维数组的秩为 2,以此类推. 在 NumPy中,每一个线性的数组称为是一个轴(axis),也就是维度(di ...
- Lesson4——NumPy 数组属性
NumPy 教程目录 NumPy 数组的维数称为秩(rank),秩就是轴的数量,即数组的维度,一维数组的秩为 1,二维数组的秩为 2,以此类推. 在 NumPy中,每一个线性的数组称为是一个轴(axi ...
- NumPy 超详细教程(1):NumPy 数组
系列文章地址 NumPy 最详细教程(1):NumPy 数组 NumPy 超详细教程(2):数据类型 NumPy 超详细教程(3):ndarray 的内部机理及高级迭代 文章目录 Numpy 数组:n ...
- numpy常见属性、创建数组
1.几种常见numpy的属性 ndim:维度 shape:行数和列数 size:元素个数 >>> import numpy as np #导入numpy模块,np是为了使用方便的 ...
- Numpy | 04 数组属性
NumPy 数组的维数称为秩(rank),一维数组的秩为 1,二维数组的秩为 2,以此类推. 在 NumPy中,每一个线性的数组称为是一个轴(axis),也就是维度(dimensions).比如说,二 ...
随机推荐
- python-Web-django-后台
url: # member 处理 re_path('member/list/', member.list, name='member/list/'), re_path('member/list_par ...
- 自动化运维:(1)认识 Shell
目录 (一)运维是什么? (二)什么是 Shell? (三)Shell的分类 (四)Shell脚本 (五)Shell的变量 (六)表达式 (七)Linux常见符号 (八)常见命令 (一)自动化运维是什 ...
- Leetcode之动态规划(DP)专题-746. 使用最小花费爬楼梯(Min Cost Climbing Stairs)
Leetcode之动态规划(DP)专题-746. 使用最小花费爬楼梯(Min Cost Climbing Stairs) 数组的每个索引做为一个阶梯,第 i个阶梯对应着一个非负数的体力花费值 cost ...
- (长期更新)【python数据建模实战】零零散散问题及解决方案梳理
注1:本文旨在梳理汇总出我们在建模过程中遇到的零碎小问题及解决方案(即当作一份答疑文档),会不定期更新,不断完善, 也欢迎大家提问,我会填写进来. 注2:感谢阅读.为方便您查找想要问题的答案,可以就本 ...
- 一个提高照片质量的网站和一个改变照片DPI的方法
相信很多童鞋都有遇到过,碰到一张很喜欢的图片,想用来做背景什么的,蛋似--因为画质太AV了怕引起误会,所以不敢使用!很气--!! 这时大神就会跳出来说,画质不好?PS是用来吃si的么! 我:我才不会用 ...
- Redis(1.8)Redis与mysql的数据库同步(缓存穿透与缓存雪崩)
[1]缓存穿透与缓存雪崩 [1.1]缓存和数据库间数据一致性问题 分布式环境下(单机就不用说了)非常容易出现缓存和数据库间的数据一致性问题,针对这一点的话,只能说,如果你的项目对缓存的要求是强一致性的 ...
- Shell脚本中计算字符串长度的5种方法
有时在Linux操作系统中需要计算某个字符串的长度,通过查询资料整理了下目前Shell中获取字符串的长度的多种方法,在这里分享给大家,方法如下: 方法1: 使用wc -L命令wc -L可以获取到当前行 ...
- 剑指offer10:2*1的小矩形横着或者竖着去覆盖2*n的大矩形,总共有多少种方法?
1. 题目描述 我们可以用2*1的小矩形横着或者竖着去覆盖更大的矩形.请问用n个2*1的小矩形无重叠地覆盖一个2*n的大矩形,总共有多少种方法? 2.思路和方法 思路:(下面说到的x*y的矩形,x是宽 ...
- thinkPHP连接数据库报错:PDOException in Connection.php line 295
跑去网上找了N多方法来尝试,重装apache.mysql.安装集成软件都试过了.错误一样. 后来细细分析,PDOException in Connection指的不就是PDO异常吗? 然后去了解了一些 ...
- 在Windows平台上运行Tomcat
从之前的学习中知道,可以调用Bootstrap类将Toomcat作为一个独立的应用程序来运行,在Windows平台上,可以调用startup.bat批处理文件来启动Tomcat,或运行shutdown ...