NumPy Ndarray对象

Numpy

NumPy 中定义的最重要的对象是称为 ndarray 的 N 维数组类型。 它描述相同类型的元素集合。 可以使用基于零的索引访问集合中的项目。

ndarray中的每个元素在内存中使用相同大小的块。 ndarray中的每个元素是数据类型对象的对象(称为 dtype)。

ndarray对象提取的任何元素(通过切片)由一个数组标量类型的 Python 对象表示。 下图显示了ndarray,数据类型对象(dtype)和数组标量类型之间的关系。

数据类型对象(dtype)和数组标量类型之间的关系

ndarray类的实例可以通过后面描述的不同的数组创建例程来构造。 基本的ndarray是使用 NumPy 中的数组函数创建的,如下所示:

numpy.array

它从任何暴露数组接口的对象,或从返回数组的任何方法创建一个ndarray。

numpy.array(object, dtype = None, copy = True, order = None, subok = False, ndmin = 0)

上面的构造器接受以下参数:

  1. object 任何暴露数组接口方法的对象都会返回一个数组或任何(嵌套)序列。
  2. dtype 数组的所需数据类型,可选。
  3. copy 可选,默认为true,对象是否被复制。
  4. order C(按行)、F(按列)或A(任意,默认)。
  5. subok 默认情况下,返回的数组被强制为基类数组。 如果为true,则返回子类。
  6. ndimin 指定返回数组的最小维数。

看看下面的例子来更好地理解。

示例1:一维

import numpy as np
a=np.array([1,2,3])
print(a)

输出内容:

[1 2 3]

示例2:二维

import numpy as np
a=np.array([[1,2],[3,4]])
print(a)

输出内容:

[[1 2]
 [3 4]]

示例3:最小维度

import numpy as np
a=np.array([1,2,3,4,5],ndmin=2)
print(a)

输出内容:

[[1 2 3 4 5]]

示例4:dtype 参数

import numpy as np
a=np.array([1,2,3],dtype=complex)#complex复数
print(a)

输出内容:

[1.+0.j 2.+0.j 3.+0.j]

ndarray 对象由计算机内存中的一维连续区域组成,带有将每个元素映射到内存块中某个位置的索引方案。 内存块以按行(C 风格)或按列(FORTRAN 或 MatLab 风格)的方式保存元素。

原创声明,本文系作者授权云+社区发表,未经许可,不得转载。

如有侵权,请联系 yunjia_community@tencent.com 删除。

发表于

我来说两句

0 条评论
登录 后参与评论

相关文章

来自专栏Phoenix的Android之旅

你不知道的HashMap

面试中经常会问到常用数据结构,比如HashMap。 相信你平时几乎每天都会用到HashMap,但是你知道它是的实现原理是怎样的吗? 这里先提几个问题:HashM...

1023
来自专栏数据小魔方

左手用R右手Python系列之——迭代器与迭代对象

接触过Python的小伙伴儿肯定都知道,Python中关于迭代器和可迭代对象运用的很广泛。迭代器可以以一种非常友好的方式使用在循环中,不仅节省内存,还能优化代码...

3838
来自专栏王磊的博客

把字符串转化为类型

问题:可以得到类型的String格式的名称,想要转化为相应的类型? ps:今天定义了好多个枚举类型,把枚举名称存放在一个ComboBox类名,控件值改变的时候要...

2675
来自专栏深度学习与计算机视觉

算法-删除字符串中的公共字符

题目: 输入两个字符串,从第一字符串中删除第二个字符串中所有的字符。例如,输入“They are students.”和”aeiou”,则删除之后的第一个字...

2326
来自专栏平凡文摘

7大经典的排序算法总结实现

1442
来自专栏武培轩的专栏

剑指Offer-包含min函数的栈

package Stack; import java.util.Stack; /** * 包含min函数的栈 * 定义栈的数据结构,请在该类型中实现一个...

2776
来自专栏小詹同学

Leetcode打卡 | No.19 删除链表的倒数第N个节点

之前我们说过 C 和 C++ 中的指针是个好东西 ,在解决这类问题很是方便 。然而 python 是没有这个概念的 ,包括链表也是模拟链表的相关操作 。刷题到这...

1492
来自专栏HTML5学堂

提取数字——字符串、正则面试题

提取数字——字符串、正则面试题 HTML5学堂:正则、数组、字符串,是JavaScript语言中让人头痛的一些知识,今天这篇文章我们使用数组字符串、正则两种方法...

2986
来自专栏python学习之旅

Python笔记(十七):生成器

Python生成器是创建迭代器的简单方法。简单来说,生成器是一个函数,它返回一个我们可以迭代的对象(迭代器)(一次一个值)。

841
来自专栏我的博客

选择排序

分类: 选择排序(选择排序,堆排序,平滑排序,笛卡尔树排序,锦标赛排序,圈排序) 思想: 1、从左至右遍历,找到最小(大)的元素,然后与第一个元素交换。 2、从...

3348

扫码关注云+社区

领取腾讯云代金券