数值分析入门------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完成,运算大规模数据可以更快
数组对象采用相同的数据类型,有助于节省运算和存储空间
数值分析入门------Numpy(ndarry数组)_第1张图片
在这里插入图片描述

ndarray对象的属性

数值分析入门------Numpy(ndarry数组)_第2张图片

ndarray的元素类型

数值分析入门------Numpy(ndarry数组)_第3张图片
数值分析入门------Numpy(ndarry数组)_第4张图片
数值分析入门------Numpy(ndarry数组)_第5张图片

ndarray数组的创建和变换

创建ndarray数组

1、从python中的列表,元组等类型创建ndarray数组
数值分析入门------Numpy(ndarry数组)_第6张图片
2、使用Numpy中函数创建ndarray数组

数值分析入门------Numpy(ndarry数组)_第7张图片
数值分析入门------Numpy(ndarry数组)_第8张图片
3、使用Numpy中其他函数创建ndarray数组
数值分析入门------Numpy(ndarry数组)_第9张图片

ndarray数组的维度变换

数值分析入门------Numpy(ndarry数组)_第10张图片

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())

一元函数

数值分析入门------Numpy(ndarry数组)_第11张图片
数值分析入门------Numpy(ndarry数组)_第12张图片

二元函数

数值分析入门------Numpy(ndarry数组)_第13张图片

你可能感兴趣的:(python学习,python,numpy,数据分析,列表)