泰安高端网站建设,qq推广的特点,厦门网站建设及维护,wordpress网易邮箱目录
介绍#xff1a;
一、生成
1.1普通生成 1.2随机生成 1.3其它生成
二、访问 三、赋值
四、运算 五、其它 介绍#xff1a; NumPy是一个用于数值计算的Python库#xff0c;它提供了高效的多维数组对象#xff08;ndarray#xff09;、用于数组计算的函数以及用于…目录
介绍
一、生成
1.1普通生成 1.2随机生成 1.3其它生成
二、访问 三、赋值
四、运算 五、其它 介绍 NumPy是一个用于数值计算的Python库它提供了高效的多维数组对象ndarray、用于数组计算的函数以及用于线性代数、傅里叶变换和随机数生成的工具。 NumPy的主要特点包括 1. ndarrayNumPy的多维数组对象可以存储相同类型的元素并提供了许多用于数组操作的方法。 2. 广播broadcastingNumPy能够进行不同形状数组之间的运算通过广播机制自动对数组进行扩展和操作。 3. 数学函数NumPy提供了丰富的数学函数如三角函数、指数和对数函数、线性代数函数等。 4. 线性代数NumPy提供了一组线性代数函数如矩阵乘法、行列式求解、特征值和特征向量等。 5. 傅里叶变换NumPy提供了一组傅里叶变换函数用于信号处理和频谱分析。 6. 随机数生成NumPy提供了用于生成各种分布的随机数的函数如正态分布、均匀分布等。 使用NumPy可以更高效地进行数值计算特别是对于大量数据和复杂计算任务NumPy的运算速度比纯Python代码快得多。它还与其他科学计算库如SciPy、pandas和可视化库如Matplotlib结合使用提供了一个完整的科学计算环境。 一、生成
1.1普通生成
import numpy as np
np.arange(0,20) #生成一个一维数组
#结果:array([ 0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16,17, 18, 19])np.arange(0,18,3) #从0到18左闭右开步长为3生成一个一维数组
#结果array([ 0, 3, 6, 9, 12, 15])
np.arange(0,20).reshape(5,4)#生成一个五行四列的数组array([[ 0, 1, 2, 3],[ 4, 5, 6, 7],[ 8, 9, 10, 11],[12, 13, 14, 15],[16, 17, 18, 19]])
my_lst1[1,2,3,4,5]
my_lst2[6,7,8,9,10]
my_lst3[11,12,13,14,15]
arrnp.array([my_lst1,my_lst2,my_lst3])#合并成一个二维数组array([[ 1, 2, 3, 4, 5],[ 6, 7, 8, 9, 10],[11, 12, 13, 14, 15]]) 1.2随机生成
np.random.randint(0,100,18).reshape(6,3) #0到100随机18个
#结果array([[22, 27, 59],
# [78, 1, 67],
# [75, 97, 84],
# [70, 40, 44],
# [25, 0, 43],
# [55, 10, 63]])np.random.random_sample((2,5)) #0到1之间浮点数
#结果array([[0.23890907, 0.15979033, 0.35734125, 0.95757058, 0.19518552],
# [0.32116342, 0.59838407, 0.09917026, 0.84594515, 0.80695709]]) 1.3其它生成
np.ones((2,5),dtypeint)#生成二行五列全为1类型为int
#结果array([[1, 1, 1, 1, 1],
# [1, 1, 1, 1, 1]])np.ones((2,5))#生成二行五列全为1类型默认为float
#结果array([[1., 1., 1., 1., 1.],
# [1., 1., 1., 1., 1.]])arr_exnp.random.rand(3,3)#均匀分配,0和1之间
#结果array([[0.72517444, 0.94190256, 0.11045657],
# [0.45551917, 0.04235148, 0.46287608],
# [0.51471045, 0.13390842, 0.84381079]])arr_exnp.random.randn(3,3)#正态分布
#结果array([[ 1.73429227, -0.84827206, 2.18423689],
# [ 0.10486991, -0.34018986, -1.60033689],
# [ 0.67497866, -1.80770298, -0.79806985]]) 二、访问
arr
#结果array([[ 1, 2, 3, 4, 5],
# [ 6, 7, 8, 9, 10],
# [11, 12, 13, 14, 15]])arr[2] #访问第二行
#结果array([11, 12, 13, 14, 15])arr[1] #访问第一行
#结果array([ 6, 7, 8, 9, 10])arr[1,1] #访问第一行第一列
#结果7arr1[1:,1:5] #第一行到所有行第1列到第5列左闭右开(,前为行 ,后为列)
#结果array([[ 7, 8, 9, 10],
# [12, 13, 14, 15]])arr[:,3:] #所有行第三列到所有列
#结果array([[ 4, 5],
# [ 9, 10],
# [14, 15]]) 三、赋值
arr1
#结果array([[ 1, 2, 3, 4, 5],
# [ 6, 7, 8, 9, 10],
# [11, 12, 13, 14, 15]])arr1[1:]100 #第一行开始到所有行,所有列赋值100
#结果array([[ 1, 2, 3, 4, 5],
# [100, 100, 100, 100, 100],
# [100, 100, 100, 100, 100]])arr1[:,1:]99#所有行1列到所有列赋值100
#结果array([[ 1, 99, 99, 99, 99],
# [100, 99, 99, 99, 99],
# [100, 99, 99, 99, 99]])
四、运算
arr1np.arange(0,10).reshape(2,5)
#结果array([[0, 1, 2, 3, 4],
# [5, 6, 7, 8, 9]])arr2np.arange(10,20).reshape(2,5)
#结果array([[10, 11, 12, 13, 14],
# [15, 16, 17, 18, 19]])arr1arr2 #相加
#结果array([[10, 12, 14, 16, 18],
# [20, 22, 24, 26, 28]])arr1*arr2
#结果array([[ 0, 11, 24, 39, 56],
# [ 75, 96, 119, 144, 171]])sum(arr1) #求和
#结果45 五、其它
type(arr)#类型
#结果numpy.ndarrayarr.shape#形状
#结果(3, 5)arr
#结果array([[ 1, 99, 99, 99, 99],
# [100, 99, 99, 99, 99],
# [100, 99, 99, 99, 99]])arr10 #小于10的数
#结果array([[ True, False, False, False, False],
# [False, False, False, False, False],
# [False, False, False, False, False]])val10
arr[arrval] #找小于val
#结果array([1])