• numpy 用法记录


    一、创建数组

    import numpy as np
    import sys
    a=[1,3,4]
    b=np.array(a) # 将list转化为numpy形式
    c=np.zeros((2,3)) # 创建shape=[2,3]的全0数组
    d=np.ones((2,3)) # 创建shape=[2,3]的全0数组
    e=np.full((3, 4), sys.maxsize) # 创建shape=[2,3],同时数组中的值都为int型最大值
    f=np.arange(2,5) #创建数组为[2 3 4]

    二、数组操作

    1.numpy.mean

    mean()函数功能:求取均值
    经常操作的参数为axis,以m * n矩阵举例:

    • axis 不设置值,对 m*n 个数求均值,返回一个实数
    • axis = 0:压缩行,对各列求均值,返回 1* n 矩阵
    • axis =1 :压缩列,对各行求均值,返回 m *1 矩阵
    import numpy as np
    a = np.array([[1, 2], [3, 4]])
    print(a)
    print(np.mean(a))
    print(np.mean(a, axis=0)) # axis=0,计算每一列的均值
    print(np.mean(a, axis=1)) # axis = 1计算每一行的均值

    output:

    [[1 2]
     [3 4]]
    2.5
    [2. 3.]
    [1.5 3.5]

     

    2.numpy.std 

    这个函数是用来求标准差的。axis=0时,表示求每一列标准差,axis=1时,表示求每一行标准差,当axis=None时,表示求全局标准差。

    其次numpy计算的为总体标准偏差,即当ddof=0时,计算有偏样本标准差;一般在拥有所有数据的情况下,计算所有数据的标准差时使用,即最终除以n。

    当ddo = 1时,表示计算无偏样本标准差,最终除以n-1

    import numpy as np
    a = np.array([0, 1, 2, 3, 4, 5, 6, 7, 8, 9])
    pian = np.std(a, ddof = 0) # 有偏
    print("std有偏计算结果:",pian)
    orig = np.sqrt(((a - np.mean(a)) ** 2).sum() / a.size)
    print("有偏公式计算结果:",orig)
    no_pian = np.std(a, ddof = 1) # 无偏
    print("std无偏计算结果:",no_pian)
    orig1 = np.sqrt(((a - np.mean(a)) ** 2).sum() / (a.size - 1))
    print("无偏公式计算结果:",orig1)

    output:

    std有偏计算结果: 2.8722813232690143
    有偏公式计算结果: 2.8722813232690143
    std无偏计算结果: 3.0276503540974917
    无偏公式计算结果: 3.0276503540974917

     

    3.numpy.average

    求取平局值,可以对每个值添加权重

    考虑数组[1,2,3,4]和相应的权重[4,3,2,1],通过将相应元素的乘积相加,并将和除以权重的和,来计算加权平均值。

    加权平均值 = (1*4+2*3+3*2+4*1)/(4+3+2+1) 

    具体代码

    import numpy as np 
    a = np.array([1,2,3,4])  
    print (np.average(a))
    wts = np.array([4,3,2,1])  
    print (np.average(a,weights = wts))

    结果如下

    2.5
    2.0

     

    4. numpy.var

    求取方差

    5.numpy.percentile

    百分位数是统计中使用的度量,表示小于这个值的观察值的百分比。

    6.numpy.median

    numpy.median() 函数用于计算数组 a 中元素的中位数(中值)

    7.np.unique

    对于一维数组或者列表,unique函数去除其中重复的元素,并按元素由大到小返回一个新的无元素重复的元组或者列表

    import numpy as np
    A = [1, 2, 2, 5,3, 4, 3]
    a = np.unique(A)
    B= (1, 2, 2,5, 3, 4, 3)
    b= np.unique(B)
    C= ['fgfh','asd','fgfh','asdfds','wrh']
    c= np.unique(C)
    print(a)
    print(b)
    print(c)
    #   输出为 [1 2 3 4 5]
    # [1 2 3 4 5]
    # ['asd' 'asdfds' 'fgfh' 'wrh']
     
     
     
  • 相关阅读:
    一些前端面试题
    CSS高度塌陷问题解决方案
    闭包
    作用域
    JS的预编译过程
    小技巧集合
    序选择器
    HTML初始结构
    剖析Vue原理&实现双向绑定MVVM
    Safari 3D transform变换z-index层级渲染异常
  • 原文地址:https://www.cnblogs.com/AntonioSu/p/15863254.html
Copyright © 2020-2023  润新知