【北京理工大学-Python 数据分析-1.1】

本文介绍了Python数据分析库NumPy的基础知识,包括数据维度的概念、一维和多维数组的创建与操作,以及数组的索引、切片和运算。NumPy提供了一维数组ndarray,它具有强大的广播功能,并且支持各种创建和变换方法,如arange、ones、zeros等。此外,文章还探讨了数组的属性,如.ndim、.shape、.size和.dtype。

数据维度
维度:一组数据的组织形式

一维数据:由对等关系的有序或无序数据构成,采用线性组织形式。包括列表、集合和数组(python中不常见,但在C++和Java中比较常见)类型。

  • 列表:数据类型可以不同
  • 数组:数据类型相同
    二维数据:由多个一维数据组成,是一维数据的组合形式(表现形式:列表)。
  • 表格
    多维数据:由一维或者二维数据在新维度上扩展形成(表现形式:列表)。
    高维数据:利用最基本的二元关系展示数据间的复杂结构。

NumPy是一个开源的Python科学计算基础库。

  • 一个强大的N维数组对象ndarray。
  • 广播功能函数(是指ndarry在执行某些计算时,如矩阵间的数值计算,对应位置元素1对1执行标量运算,而非线性代数中的矩阵间的运算。可以确保数组间形状不完全相同时可以自动的通过广播机制扩散到相同的形状,进而执行相应的计算功能)。
  • 整合C/C++/Fortran代码的工具。
  • 线性代数、傅里叶变换、随机数生成等功能。
  • NumPy是SciPy、Pandas等数据处理或科学计算库的 基础单元。
  • NumPy的印用(import numpy as np)
    使用Numpy进行科学计算,底层使用的C语言。
    N维数组对象:ndarray
  • 观察:科学计算中,一个维度的所有数据类型往往相同,数组对象采用相同的数据类型,有助于节省运算空间。
    ndarray是一个多维数组对象,由两部分构成:
  • 实际的数据。
  • 描述这些数据的元数据(数据维度、数据类习性等)。
  • nadarray数组一般要求所有元素类型相同(同质),数组下标从0开始(与列表相同)。
  • 使用np.array()生成一个ndarray数组。
  • ndarray在程序中的别名是:array.
  • np。array(0输出成[]形式,元素间用空格分隔。
  • ndarray的两个基本概念:是轴(axis):保存数据的维度;秩(rank):轴的数量,是描述ndarray的基本数据和形式。

ndarray对象的属性

属性 说明
.ndim 秩,即轴的数量或维度的数量
.shape ndarray对象的尺度,对于矩阵,n行m列
.size ndarray对象元素的个数,相当于.shape中的n*m值
.dtype ndarray对象的元素类型
.itemsize ndarray对象中每个元素的大小,以字节为单位
a=np.array([[0,1,2,3,4],[9,8,7,6,5]])
a.ndim
a.dtype
a.itemsize

ndarray的元素类型

数据类型 说明
bool 布尔类型,True或False
intc 与C语言中的int 类型一致,一那是int32或者int64
intp 用于索引的证书,与C语言中的ssize_t一致,int32或者int64
int8 字节长度的整数,取值:[-128,127]
int16 16维长度的整数,取值:[-64,63]
int32 32位长度的整数,取值:[-231 ,231 -1]
int64 64位长度的整数,取值:[-263 ,263 -1]
uint8 8位无符号整数,取值:[0,255]
uint16 16位无符号整数,取值:[0,65535]
uint32 32位无符号整数,取值[0,232 -1]
uint64 64位无符号整数,取值:[0,264 -1]
float16 16位半精度浮点数:1位符号位,5位指数,10位尾数
float32 32位半精度浮点数:1位符号位,6位指数,23位尾数
float64 64位半精度浮点数:1位符号位,11位指数,52位尾数
complex64 复数类型,实部和虚部都是32位浮点数
complex128 复数类型,实部和虚部都是64位浮点数

numpy为什么有如此多的元素性能和类型?
ndarray的元素类型

  • 对比:Python语法仅支持整数、浮点数和复数3种类型。
  • 科学计算涉及的数据较多,对存储和性能都有较高的要求 ;
  • 对元素类型精细定义,有助于Numpy合理使用存储空间并优化性能。
  • 对元素类型精细定义,有助于程序员对程序规模有合理的评估。
    ndarray数组的创建方法
  • 从Python中的列表、元组等类型创建ndarray数组。
  • 使用NumPy中函数创建ndarray数组,如:arange,ones,zeros等。
  • 从字节流(raw bytes)中创建ndarray数组。
  • 从文件中读取特定格式,创建ndarray数组。

ndarray数组的创建方法:
(1)从Python中的列表、元组等类型创建ndarray数组。

x
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值