NumPy基础

最近的爬虫学习告一段落,后续补上爬虫的笔记。现在到数据分析部分,先从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的数组

评论

发表回复

您的邮箱地址不会被公开。 必填项已用 * 标注

这个站点使用 Akismet 来减少垃圾评论。了解你的评论数据如何被处理