Numpy学习

作者: Wangthirteen | 来源:发表于2018-12-23 14:05 被阅读19次

    NumpyPython的一种开源的数值计算包,功能非常强大,具体使用如下

    一、Numpy的对象

    • numpy里面有两个重要的对象,分别是nadarray和ufuncy

    nadarray:解决数组多维度的问题
    ufuncy :解决了 对数组进行处理的问题

    二、nadarray对象

    1.介绍

    Numpy通过创建ndarray对象,来对多维数组进行操作
    Numpy多维数组中的维数叫做秩(rank),一维数组的的秩为一,二维数组的秩为二
    Numpy的另一个线性叫做轴(axis),秩是用来描述轴的数量

    2.使用

    创建
    np.array([1,2,3])(一维)
    np.array([1,2,3],[4,5,6])(多维)其中[1,2,3]整体作为一个元素

    属性
    a.shape 获取数组大小
    a.dtype 获取元素属性
    下标从0开始,对元素修改直接赋值,多维数组修改下标应该是[x,y]比如[0,1]

    自定义dtype结构类型


    自定义数据类型.jpg

    三、ufuncy对象

    1.创建连续数组

    x1=np.arange(1,11,2) #指定初始值,终值,步长
    x2=np.linspace(1,9,5) #指定初始值,终值,元素个数,默认是包括终值

    2.算术运算


    np.add(x1,x2)
    [2,6,10,14,18]

    subtract(x1,x2)
    [0,0,0,0,0]

    np.multiply(x1,x2)

    np.divide(x1,x2)
    求n次方
    np.power(x1,x2)
    x2数组中年的元素实际上是次方的次数,x1为元素为基数
    取余数
    np.remainder(x1,x2)
    np.mod(x1,x2)

    3.统计函数

    数组/矩阵中最大值函数amax(),最小值函数amin()


    数组中的最值.jpg
    输出.jpg
    • admin(a):指的是数组中的最小值
    • amin(a,0):指的是沿着axis=0轴最小的指,axis=0轴的元素是[1,2,3],[4,5,6],axis=1轴是[1,4,7],[2,5,8],其他同理
    • np.ptp(a) #统计最大值和最小值的差ptp()
    • np.ptp(a,0)#统计数组的百分位数percentile()
    • np.percentile(a,50)
    • np.percentile(a,50,axis=0) #percentilr 代表第p个百分位数,取值范围是0-100,如果p=0是求最小值,p=50是求最大值,p=100是求最大值
    • np.median(a) #统计数组中的中位数median(),平均数mean()
    • np.median(a,axis=0)
    • np.mean(a)
    • np.mean(a,axis=0)
    • np.average(a) #统计数组中的加权平均值average()
    • np.average(a,weights=wts) #可以指定权重[1,2,3,4]
    • np.std(a) #标准差:是方差的算术平方根,在数学意义上,代表的是一组数据离平均值的分散程度
    • np.var(a) #方差:每个数值与平均值之差的平方求和的平均值

    四、Numpy排序

    • sort(a,axis=-1,kind='quicksort',order=None)
      kind可以指定 quicksort(快速排序),mergesort(合并排序),heap sort(堆排序),默认是快速排序
      axis默认是 -1 从最后一个轴开始排序,或者axis=None表示采用扁平化方式作为一个向量排序
      order可以对于结构化数组指定某个字段进行排序

    后记

    Numpy详细教程
    Numpy中文文档

    相关文章

      网友评论

        本文标题:Numpy学习

        本文链接:https://www.haomeiwen.com/subject/ideihqtx.html