数值分析入门------Numpy(ndarry数组)

一:数据的维度

维度:一组数据的组织形式
一维数据:采用线性组织(列表有序,集合无序)
列表和数组:列表中数据类型可以不同,而数组数据类型必须相同
二维数据: 一维数据的组合形式,表格(列表)
多维数据由一维或者二维数据扩展而成(列表)
高维数据(字典类型或数据表示格式)

二:Numpy的数组对象

一个强大的N维数组对象 ndarray
引用:import numpy as np

N维数组对象:ndarray

ndarray在程序中别名就是array
例: 计算A^2 + b^3 ,其中a和b是一维数组

#常规算法
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)

    print(c[i], end=" ")
#使用ndarry数组对象
import numpy as np
a = np.array([0, 1, 2, 3, 4])
b = np.array([9, 8, 7, 6, 5])
c = a ** 2 + b ** 3
for i in range(len(c)):
    print(c[i], end=" ")

数组对象可以去掉元素间运算所需要的循环,使一维向量更像单个数据
numpy底层使用c完成,运算大规模数据可以更快
数组对象采用相同的数据类型,有助于节省运算和存储空间
在这里插入图片描述
在这里插入图片描述

ndarray对象的属性

在这里插入图片描述

ndarray的元素类型

在这里插入图片描述
在这里插入图片描述
在这里插入图片描述

ndarray数组的创建和变换

创建ndarray数组

1、从python中的列表,元组等类型创建ndarray数组
在这里插入图片描述
2、使用Numpy中函数创建ndarray数组

在这里插入图片描述
在这里插入图片描述
3、使用Numpy中其他函数创建ndarray数组
在这里插入图片描述

ndarray数组的维度变换

在这里插入图片描述

ndarray数组的类型变换

new_a = a.astype(new_type)
astype()方法一定会创建一个新的数组(原始数据的一个拷贝),即两个类型一致

ndarray数组向列表的转换

Is = a.tolist()

ndarray数组的操作(索引和切片)

注意: 切片的时候区间是左闭右开区间

一维:

import numpy as np
a = np.array([0, 1, 2, 3, 4])
#索引
print(a[2])
#切片
print(a[1 : 4 : 2])

多维:

import numpy as np
a = np.arange(24).reshape(2, 3, 4)
#索引
print(a[1][2][3])
print(a[-1][-2][-3])
#每一个维度一个索引值,逗号分隔
print(a[1, 2, 3])
print(a[-1, -2, -3])
#切片
print(a[:, 1, -3])
print(a[:, 1 : 3, :])
#步长为2
print(a[:, :, ::2])

ndarray数组的运算

1、数组与标量之间的运算
······数组与标量之间的运算作用于数组每一个元素

import numpy as np
a = np.arange(24).reshape(2, 3, 4)
#计算平均值
print(a.mean())
#与标量进行运算
print(a / a.mean())

一元函数

在这里插入图片描述
在这里插入图片描述

二元函数

在这里插入图片描述

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值