NumPy的数组对象:ndarray

本文详细介绍了NumPy中的核心对象ndarray,包括其介绍、属性、元素类型以及创建和变换方法。从Python列表、元组创建数组,使用NumPy函数如arange、ones、zeros等创建特定形状的数组,并探讨了数组的reshape、resize、swapaxes等变换操作。
摘要由CSDN通过智能技术生成

目录

一:前言

1:数据的维度

2:数据维度的Python表示

3:NumPy的介绍

4:NumPy的引用

5:计算a²+b²例子,其中a和b都是一维数组

二:N维数组对象:ndarray

1:ndarray介绍

2:ndarry对象的属性

3:ndarray的元素类型

三:ndarray数组的创建方法

1:从Python中的列表、元组等类型创建ndarray数组

a:从列表类型创建

b:从元组类型创建

c:从列表和元组混合类型创建 

2:使用NumPy中函数创建ndarray数组 

np.arange(n)        

np.ones(shape)       

np.zeros(shape)        

np.full(shape,val) 

np.eye(n)

np.ones_like(a)

np.zeros_like(a)

np.full_like(a,val)

np.linspace()

np.concatenate()

3:从字节流(raw bytes)中创建ndarray数组 

4:从文件中读取特定格式,创建ndarray数组

四:ndarray数组的变换

.reshape(shape)

.resize(shape)

.swapaxes(ax1,ax2)

.flatten()

.astype(new_type)

.tolist()


一:前言

1:数据的维度

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

列表和数组:一组数据的有序结构

区别:组成列表的各元素的数据类型可以不同,而组成数组的各元素的数据类型得相同。

多维数据:由一维或或二维数据在新维度上扩展形成

高维数据:仅利用最基本的二元关系展示数据之间的复杂结构

2:数据维度的Python表示

一维数据:列表(元素有序)和集合(元素无序)类型

二维数据:列表类型

多维数据:列表类型

高维数据:字典类型或数据表示格式(JSON、XML和YAML格式)

3:NumPy的介绍

NumPy是一个开源的Python科学计算基础库,其拥有:

  1. 一个强大的N维数组对象ndarray
  2. 广播功能函数
  3. 整合C/C++/Fortran代码的工具
  4. 线性代数、傅里叶变换、随机数生成等功能

NumPy是SciPy、Pandas等数据处理或科学计算库的基础

4:NumPy的引用

import numpy as np

尽管别名可以省略或更改,但建议使用上述约定的别名,将来工作中会更方便。

以下皆以np为NumPy别名

5:计算a²+b²例子,其中a和b都是一维数组

传统方法:

a=[1,2,3]
b=[2,3,4]
c=[]
for i in range(len(a)):
    c.append(a[i]**2+b[i]**2)
print(c)

调用NumPy库来定义数组方法:

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

结果都是:

[5,13,25]


二:N维数组对象:ndarray

1:ndarray介绍

ndarray是一个多维数组对象,由两部分组成:

  1. 实际的数据
  2. 描述这些数据的元数据(数据维度、数据类型等)

ndarray一般要求所有元素类型相同(同质),数组下标从0开始

np.array()        生成一个ndarray数组

ndarray        在程序中的别名是:array

np.array()        输出成[]形式,元素由空格分割。

轴(axis):保存数据的维度

秩(rank):轴的数量

ndarray数组可以由非同质对象构成

非同质ndarray元素为对象类型

非同质ndarray对象无法有效发挥NumPy优势,尽量避免使用

 示例:

 

2:ndarry对象的属性

属性 说明
.ndim 秩,即轴的数量或维度的数量
.shape ndarray对象的尺度,对于矩阵,n行m列
.size ndarray对象元素的个数,相当于.shape中n*m的值
.dtyoe ndarry对象的元素类型
.itemsize ndarry对象中每个元素的大小,以字节为单位

示例:

  • 2
    点赞
  • 12
    收藏
    觉得还不错? 一键收藏
  • 1
    评论
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值