标签:pytho code image 指定 傅里叶变换 利用 turn numpy 个数
NumPy库学习
一.数据的维度
数据的维度是数据的组织形式。
二.数据维度的python表示
#一维数据:列表和集合类型 [1,2,3] #有序 {1,2,3} #无序 #二维数据:列表类型 [[1,2,3], [4,5,6]] #多维数据 [[[1,2,3], [4,5,6]], [7,8,9], [4,4,4]] #高维数据:字典类型或数据表示格式,例如JSON、XML、YAML dict={ ‘firstName‘:‘Tian‘, ‘lastName‘:‘Song‘, }
三.NumPy的多维数组对象:ndarray
1.NumPy是一个开源的python科学计算基础库,包含:
NumPy是SciPy、Pandas等数据处理或科学计算库的基础
2.NumPy的引用:
import numpy as np #这是一种约定俗成的引用名称,建议使用上述约定的别名
3.python已经有列表类型,为什么需要一个数组对象?
例如以下事例:
#计算A^2+B^2,其中A和B是一维数组 import numpy as np #使用列表的方式 def pySum(): a=[0,1,2,3,4] b=[5,6,7,8,9] c=[] for i in range(len(a)): c.append(a[i]**2+b[i]**2) return c print("pySum-->",pySum()) #使用数组的方式 def npSum(): a=np.array([0,1,2,3,4]) b=np.array([5,6,7,8,9]) c=a**2+b**2 return c print("npSum-->",npSum()) #运行结果 ‘‘‘ pySum--> [25, 37, 53, 73, 97] npSum--> [25 37 53 73 97] ‘‘‘ #可见如果采用数组的方式,numy把一维向量当作单个数据对待,这样更有利于进行科学计算
4.ndarray对象的构成:
ndarray数组一般要求所有元素类型相同(同质),数组下标从0开始
ndarry实例:
import numpy as np #ndarray在程序中的别名是:array #np.array()生成一个ndarray数组 a=np.array([[0,1,2,3,4], [5,6,7,8,9]]) print(a) #np.array()输出成[]形式,元素有空格分割 ‘‘‘ [[0 1 2 3 4] [5 6 7 8 9]] ‘‘‘ #轴(axis):保存数据的维度;秩(rank):轴的数量
5.ndarray对象的属性
实例:
import numpy as np a=np.array([[1,2,3,4], [5,6,7,8]]) print("维度:",a.ndim) print("尺度:",a.shape) print("元素个数:",a.size) print("元素的类型:",a.dtype) print("元素的大小:",a.itemsize) ‘‘‘ 维度: 2 尺度: (2, 4) 元素个数: 8 元素的类型: int32 元素的大小: 4 ‘‘‘
6.ndarray的元素类型
ndarrya为什么要支持这么多种元素类型?
7.非同质的ndarray对象
非同质的ndarray元素为对象类型,无法有效发挥NumPy优势,尽量避免使用
import numpy as np a=np.array([[1,2,3,4], [5,6,7]]) print("尺度:",a.shape) print("元素个数:",a.size) print("元素的类型:",a.dtype) print("元素的大小:",a.itemsize) ‘‘‘ 尺度: (2,) 元素个数: 2 元素的类型: object 元素的大小: 8 ‘‘‘ #此时每个一维向量被当成一个对象(元素)
8.ndarray数组的创建
(1)从python中的列表、元组等类型创建ndarray数组
x=np.array(list/tuple,dtype=np.float32) #当np.array()不指定dtype时,NumPy将根据情况关联一个dtype类型
例子:
(2)使用NumPy中函数创建ndarray数组,如:arrange,ones,zeros
#######
注:使用np.arange()方法创建的数组默认是int32类型,另外几种方法默认是float类型
例子:
例子:
例子:
9.ndarray数组的变换
(1)ndarray数组的维度变换
例子:
(2)ndarray数组的类型变换
new_a = a.astype(new_type)
#astype()方法一定会创建新的数组()原始数组的一个拷贝,即使两个类型一致
例子:
(3)ndarray数组向列表的转换
ls=a.tolist()
例子:
10.ndarray数组的操作
(1)ndarray数组的索引和切片
一维数组的索引和切片:与python的列表类似
多维数组的索引:
多维数组的切片:
(2)ndarray数组的运算
数组与标量之间的运算作用于数组的每一个元素
(3)NumPy一元函数
例子:
(4)NumPy二元函数
例子:
标签:pytho code image 指定 傅里叶变换 利用 turn numpy 个数
原文地址:https://www.cnblogs.com/BUPT-MrWu/p/11341905.html