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).比如说,二 ...
随机推荐
- coding.net------WEBHOOK自动部署实战
使用WebHook自动部署项目今天在laravist.com看到了这个 Webhook 自动部署Git项目 这个教学视频,以前自己也想做这样做一个利用Git WebHook的自动化部署,但总是不成功, ...
- antd <BackTop>组件的使用
<Content className={style.content} style={{ maxHeight: 'calc(100vh - 175px)',overflowY:"auto ...
- Mybatis batch 批量处理
@Testpublic void batch() throws IOException { InputStream inputStream= Resources.getResourceAsStream ...
- k8s集群证书过期(kubeadm 1.10.2 )
1.k8s 集群架构描述 kubeadm v1.10.2创建k8s集群. master节点高可用,三节点(10.18.60.3.10.18.60.4.10.18.60.5). LVS实现master三 ...
- 从零开始的白帽子学习--stage1--常见漏洞类型介绍--part3--不安全的文件上传
Q:什么是文件上传漏洞 A:文件上传功能在web应用系统很常见,比如很多网站注册的时候需要上传头像.上传附件等等.当用户点击上传按钮后,后台会对上传的文件进行判断 比如是否是指定的类型.后缀名.大小等 ...
- Spring源码分析(1)容器的基本实现——核心类介绍
bean是Spring中最核心的东西,因为Spring就像是个大水桶,而bean就像是容器中的水,水桶脱离了水便也没什么用处了,那么我们先看看bean的定义. public class MyTestB ...
- python中全局global和局部nonlocal命名空间
python中全局global和局部nonlocal命名空间 局部名称空间对全局名称空间的变量可以引用,但是无法改变. count = 1 def func1(): count = 2 print(c ...
- MyBatis学习存档(1)——入门
一.简介 MyBatis的前身是iBatis,本是Apache的一个开源的项目 MyBatis是一个数据持久层(ORM)框架,把实体类和SQL语句之间建立了映射关系,是一种半自动化的ORM实现 MyB ...
- WPF 异步加载窗体
加载某个界面时,需要获取数据,而数据返回的时间比较长,这个时候可以异步加载界面. 1.在该窗体的加载事件(Load)中编写以下代码: new Thread(p=>{DataBinding();} ...
- Hinton等人新研究:如何更好地测量神经网络表示相似性
Hinton等人新研究:如何更好地测量神经网络表示相似性 2019年05月22日 08:39:15 喜欢打酱油的老鸟 阅读数 177更多 分类专栏: 人工智能 https://www.toutia ...