• numpy常用函数


    a = np.array([1, 2, 3], dtype='float32')
    b = np.array([[1, 2, 3], [4, 5, 6]])
    c = np.array((1, 2, 3))
    
    a = np.zeros((2, 5))
    b = np.ones((2, 5))
    c = np.empty((2, 5))
    
    a = np.arange(10) #array([0, 1, 2, 3, 4, 5, 6, 7, 8, 9])
    b = np.arange(10, 30, 3) #array([10, 13, 16, 19, 22, 25, 28])
    c = np.arange(10).reshape(2, 5) #array([[0, 1, 2, 3, 4], [5, 6, 7, 8, 9])
    d = np.linspace(10, 30, 3) #array([10., 20., 30.])
    
    a.ndim  #数组的维度:1
    a.shape  #数组的形状:(3,)
    a.dtype  #数组类型
    
    a.astype('float32') #改变数组类型
    a.round(1) #控制小数点,五舍六入
    
    
    a[5:8] #[5,6,7]
    a[5:8] = 10 #原数组被改变
    a[:7:2] #起点,终点,步长
    
    a = np.arange(24).reshape(2,3,4)
    a[1][0][2] #索引,结果为14
    a[1, 0, 2] #与上面等价
    a[1, :2, :2] #花式索引
    
    a > 13 #返回bool数组
    a[a > 13] #返回所有满足条件的值(一维数组)
    a[(a > 10) & (a < 20)] #多条件
    
    
    a = np.arange(10).reshape(2, 5)
    a1 = np.arange(10, 15)
    a + 10 #所有元素加10
    a + a #相同形状数组运算,对应元素进行运算
    a + a1 #行的大小相同,所以在行上进行广播
    
    a.T #转置
    np.dot(a, a.T) #矩阵乘法
    a.transpose() #转置
    b = a.flatten() #数组扁平化,不改变原数组
    
    a = np.array([[1, 2], [3, 4]])
    b = np.array([[5, 6], [7, 8]])
    np.concatenate([a, b]) #默认在0轴上进行合并
    '''
    array([[1, 2],
        [3, 4],
        [5, 6],
        [7, 8]])
    '''`
    
    a = np.array([1, 2, 3, 4])
    b = np.array([5, 6, 7, 8])
    np.stack([a, b]) #增加一个维度合并
    '''
    array([[1, 2, 3, 4],
        [5, 6, 7, 8]])
    '''
    
    np.unique(a) #获取唯一值
    np.sqrt(a) #开根
    np.sin(a) #正弦
    np.cos(a) #余弦
    ~b>a #取反
    
    a = np.random.randn(5, 4)
    np.mean(a) #数组均值
    np.sum(a) #数组求和
    np.sum(a, axis=0) #在0轴上求和
    np.sum(a, axis=1) #在1轴上求和
    np.max(a) #最大值
    np.min(a) #最小值
    np.std(a) #标准差
    np.median(a) #中位数
    np.cumsum(a) #累加
    np.cumprod(a) #累乘
    np.any(a > 0) #存在
    np.all(a > 0) #任意
    np.sort(a) #排序
    np.argsort(a, axis=0) #排序后的索引
    np.argmin(a) #最小值的索引
    
    np.random.normal(loc=0, scale=1e-2, size=(3, 5)) #正态分布,loc为均值,scale为标准差,size为形状
    np.random.randn(3, 5) #标准正态分布
    np.random.randint(1, 10, (3, 5)) #生成[1,10)之间的整数
    np.random.choice([1, 2, 3, 4, 5]) #随机抽样
    np.random.permutation([1, 2, 3, 4, 5]) #乱序
    np.random.seed(12) #随机种子
    
    a = np.array([1, 2, 3, 4, 5])
    b = np.array([10, 20, 30, 40, 50])
    c = np.array([True, False, True, True, False])
    np.where(c, a, b) #若c为True选a,否则选b
    
    np.save(filename, a) #保存ndarray
    b = np.load(filename) #获取ndarray
    
  • 相关阅读:
    Android的webview的设置参数
    禁止RecycleView滑动
    Volley加载不出图片的问题
    LIstview滑动时不加载图片,停止时加载!
    【原创】设计模式开篇—面向对象的软件设计
    [原创]写给自己的总结—2014到2015
    【原创】开车分四个阶段的话,你属于哪个
    【原创】亲身经历的几次合同陷阱
    【转】程序员需谨记的8条团队开发原则
    【转】绩效考核的10大误区
  • 原文地址:https://www.cnblogs.com/miraclepbc/p/16216989.html
Copyright © 2020-2023  润新知