NumPy基础

栏目: Python · 发布时间: 7年前

内容简介:最近的爬虫学习告一段落,后续补上爬虫的笔记。现在到数据分析部分,先从NumPy开始(环境python-3.6.5) 2019/1/23NumPy是高性能科学计算和数据分析的基础包。包括以下几个功能:用python原生代码对两个向量相加

最近的爬虫学习告一段落,后续补上爬虫的笔记。现在到数据分析部分,先从NumPy开始(环境python-3.6.5) 2019/1/23

NumPy基础

NumPy是高性能科学计算和数据分析的基础包。包括以下几个功能:

  • ndarray,一个具有矢量算术运算和复杂广播能力的快速且节省空间的多维数组;
  • 用于对整组数据进行快速运算的标准数学函数(无需编写循环);
  • 用于读写磁盘的 工具 以及用于操作内存映射文件的工具;
  • 线性代数,随机数生成以及傅里叶变换功能;
  • 用于集成由C,C++,Fortran等语言编写的代码的工具。

例子引入

python 原生代码对两个向量相加

def pythonsum(n):
    a = list(range(n))
    b = list(range(n))
    c = []
    for i in range(len(a)):
        a[i] = i ** 2
        b[i] = i ** 3
        c.append(a[i] + b[i])
    return c

arr = pythonsum(2)
print(arr)

利用NumPy对向量相加。

import numpy as np
def numpysum(n):
    a = np.arange(n) ** 2
    b = np.arange(n) ** 3
    c = a + b
    return c
arr = numpysum(2)
print(arr)

两种方法都可以对向量进行相加,相比而言利用NumPy库的代码会更简洁一点。可以对两种方法计算出执行时间,结果也是NumPy的效率高些。

ndarray,多维数组对象

NumPy中的ndarray是一个多维数组对象,这个对象是一个快速而且灵活的大数据集容器,该对象由两个部分组成:

  • 实际的数据
  • 描述这些数据的元数据

ndarray 是一个通用的同构数据多维容器,指的是其中的 元素 必须是 相同 的数据类型,每一个数组都有一个 shape (表示各维度大小的元组)和一个 dtype (用于说明数据类型的对象)。

In [12]: import numpy as np

In [13]: a = np.arange(5)

In [14]: a.dtype
Out[14]: dtype('int32')

In [15]: a.shape
Out[15]: (5,)

In [16]: a
Out[16]: array([0, 1, 2, 3, 4])

NumPy中创建数组的函数

函数 说明
array 将输入数据(元组,列表或其他序列类型)转换为ndarray。要么推断出dtype,要么显示指定dtype。默认直接复制输入数据
asarray 将输入转换为ndarray,如果输入就是一个ndarray就不进行复制
arange 类似内置的range,但返回的是一个ndarray而不是一个列表
ones,ones_like 根据指定的形状和dtype创建一个全是1的数组。ones_like以另一个数组为参数,并根据其形状和dtype创建一个全为1的数组
zeros,zeros_like 类似于ones,ones_like,只不过创建的是全为0的数组

以上所述就是小编给大家介绍的《NumPy基础》,希望对大家有所帮助,如果大家有任何疑问请给我留言,小编会及时回复大家的。在此也非常感谢大家对 码农网 的支持!

查看所有标签

猜你喜欢:

本站部分资源来源于网络,本站转载出于传递更多信息之目的,版权归原作者或者来源机构所有,如转载稿涉及版权问题,请联系我们

从0到1

从0到1

彼得·蒂尔、布莱克·马斯特斯 / 高玉芳 / 中信出版股份有限公司 / 2015-1-1 / CNY 45.00

图书简介: http://v.youku.com/v_show/id_XOTA0NjcyMzE2.html?wm=3333_2001 硅谷创投教父、PayPal创始人作品,斯坦福大学改变未来的一堂课,为世界创造价值的商业哲学。 在科技剧烈改变世界的今天,想要成功,你必须在一切发生之前研究结局。 你必须找到创新的独特方式,让未来不仅仅与众不同,而且更加美好。 从0到1,......一起来看看 《从0到1》 这本书的介绍吧!

JSON 在线解析
JSON 在线解析

在线 JSON 格式化工具

URL 编码/解码
URL 编码/解码

URL 编码/解码

正则表达式在线测试
正则表达式在线测试

正则表达式在线测试