数据维度与NumPy库简介
一维数据
- 定义
一维数据由对等关系的有序或无序数据构成,采用线性方式组织;
3.1413, 3.1398, 3.1404, 3.1401, 3.1349, 3.1376
对应列表、数据和集合等概念。
列表和数组
- 都是表达一组数据的有序结构的类型;
- 列表的数据类型可以不同(例如),数组的数据类型必须相同;
3.1413, 'pi', 3.1404, [3.1401, 3.1349], '3.1376'
二维数据
二维数据由多个一维数据组成,是一维数据的组合形式。例如:表格;
多维数据
多维数据由一维或二维数据在新维度上扩展而成,比如:三年的中国大学排名表,它是二维数据表格在时间维度上的扩展。
数据维度的Python表示
- 一维数据:列表(有序)和集合(无序)类型;
- 二维数据/多维数据:多位列表类型;
- 高维数据:字典类型;
NumPy库
简介
NumPy是一个开源的Python科学计算基础库,它具有如下特点:
- 一个强大的N维数组处理对象ndarray;
- 广播功能函数;
- 整合C/C++/Fortran代码的工具;
引入NumPy库的同时需要将他命名为约定俗成的别名:np
import numpy as np
N维数组对象ndarray
- 为什么要使用ndarray
例:计算A^2 + B^3 ,其中A和B是一维数组。使用普通Python语言编程如下:
def pySum():
a = [0, 1, 2, 3, 4]
b = [9, 8, 7, 6, 5]
c = []
for i in range(len(a))
c.append(a[i] ** 2 + b[i] ** 3)
return c
print(pySum())
可以看到,在进行计算时,必须通过循环的逻辑,具体到数组的具体元素之间的运算,不直观也不方便。
使用NumPy编程如下:
def npSum():
a = np.array([0, 1, 2, 3, 4])
b = np.array([9, 8, 7, 6 ,5])
c = a ** 2 + b ** 3
return c
print(npSum())
可以看到,借助NumPy的帮助,程序员可以直接把数组看做具体元素,直接进行运算,大大简化了步骤。
- ndarray简介
ndarray是一个多维数组对象,由两部分构成:实际的数据,描述这些数据的元数据(数据维度、数据类型等)。
ndarray数组一般要求数组中所有元素类型相同,数组下标从0开始。
- ndarray实例
使用如下命令生成一个ndarray数组;
np.array()
ndarray输出成[]形式,元素由空格分离。他有两个基本参量:轴(保存数据的维度