精华内容
下载资源
问答
  • np.arange()用法

    万次阅读 多人点赞 2019-04-18 23:20:47
    np.arange() 函数返回一个有终点和起点的固定步长的排列,如[1,2,3,4,5],起点是1,终点是5,步长为1。 参数个数情况: np.arange()函数分为一个参数,两个参数,三个参数三种情况 1)一个参数时,参数值为终点,...

    np.arange()
    函数返回一个有终点和起点的固定步长的排列,如[1,2,3,4,5],起点是1,终点是6,步长为1。
    参数个数情况: np.arange()函数分为一个参数,两个参数,三个参数三种情况
    1)一个参数时,参数值为终点,起点取默认值0,步长取默认值1。
    2)两个参数时,第一个参数为起点,第二个参数为终点,步长取默认值1。
    3)三个参数时,第一个参数为起点,第二个参数为终点,第三个参数为步长。其中步长支持小数

    #一个参数 默认起点0,步长为1 输出:[0 1 2]
    a = np.arange(3)
    
    #两个参数 默认步长为1 输出[3 4 5 6 7 8]
    a = np.arange(3,9)
    
    #三个参数 起点为0,终点为3,步长为0.1 输出[ 0.   0.1  0.2  0.3  0.4  0.5  0.6  0.7  0.8  0.9  1.   1.1  1.2  1.3  1.4 1.5  1.6  1.7  1.8  1.9  2.   2.1  2.2  2.3  2.4  2.5  2.6  2.7  2.8  2.9]
    a = np.arange(0, 3, 0.1)
    
    展开全文
  • np.newaxis作用

    万次阅读 多人点赞 2018-09-22 11:29:42
    np.newaxis的功能:插入新维度 举个简单的例子介绍一下吧。 栗子1: a=np.array([1,2,3,4,5]) print(a.shape) print (a) 输出: (5,) [1 2 3 4 5] 栗子2: a=np.array([1,2,3,4,5]) aa=a[:,np.newaxis] print(aa....

    np.newaxis的功能:插入新维度
    举个简单的例子介绍一下吧。

    栗子1:

     a=np.array([1,2,3,4,5])
        print(a.shape)
        print (a)
    

    输出:
    (5,)
    [1 2 3 4 5]

    栗子2:

    a=np.array([1,2,3,4,5])
    aa=a[:,np.newaxis]
    print(aa.shape)
    print (aa)
    

    输出:(5, 1)
    [[1]
    [2]
    [3]
    [4]
    [5]]

    栗子3:

    a=np.array([1,2,3,4,5])
    aa=a[np.newaxis,:]
    print(aa.shape)
    print (aa)
    

    输出
    (1, 5)
    [[1 2 3 4 5]]

    看明白了吧,原来np.newaxis的作用是增加一个维度。
    对于[: , np.newaxis] 和 [np.newaxis,:]
    是在np.newaxis这里增加1维。

    这样改变维度的作用往往是将一维的数据转变成一个矩阵,与代码后面的权重矩阵进行相乘, 否则单单的数据是不能呢这样相乘的哦。

    展开全文
  • np.append()函数用法

    万次阅读 多人点赞 2019-06-28 23:21:49
    函数np.append(arr, values, axis=None) 作用: 为原始array添加一些values 参数: arr:需要被添加values的数组 values:添加到数组arr中的值(array_like,类数组) axis:可选参数,如果axis没有给出,那么arr...

    函数np.append(arr, values, axis=None)

    作用:

    为原始array添加一些values

    参数:

    • arr:需要被添加values的数组
    • values:添加到数组arr中的值(array_like,类数组)
    • axis:可选参数,如果axis没有给出,那么arr,values都将先展平成一维数组。注:如果axis被指定了,那么arr和values需要有相同的shape,否则报错:ValueError: arrays must have same number of dimensions

    补充对axis的理解

    • axis的最大值为数组arr的维数-1,如arr维数等于1,axis最大值为0;arr维数等于2,axis最大值为1,以此类推。
    • 当arr的维数为2(理解为单通道图),axis=0表示沿着行方向添加values;axis=1表示沿着列方向添加values
    • 当arr的维数为3(理解为多通道图),axis=0,axis=1时同上;axis=2表示沿着深度方向添加values

    返回:

    添加了values的新数组

    e.g.

    1. 不考虑axis

        arr,values都将先展平成一维数组,然后沿着axis=0的方向在arr后添加values

    import numpy as np
    a=[1,2,3]
    b=[4,5]
    c=[[6,7],[8,9]]
    print(np.append(a,b))
    print(np.append(a,c))

    输出结果如下:

    [1 2 3 4 5]
    [1 2 3 6 7 8 9]
    

    2. 考虑axis

        arr,values的shape相同

    import numpy as np
    a=[1,2,3]
    b=[4,5]
    c=[[6,7],[8,9]]
    d=[[10,11],[12,13]]
    print('在一维数组a后添加values,结果如下:{}'.format(np.append(a,b,axis=0)))
    print('沿二维数组c的行方向添加values结果如下:'.format(np.append(c,d,axis=0)))
    print('沿二维数组c的列方向添加values结果如下:'.format(np.append(c,d,axis=1)))
    print('使用了axis,若arr和values的形状不同,则报错:'.format(np.append(a,c,axis=0)))

    结果如下:

    在一维数组a后添加values,结果如下:
    [1 2 3 4 5]
    沿二维数组c的行方向添加values结果如下:
    [[ 6  7]
     [ 8  9]
     [10 11]
     [12 13]]
    沿二维数组c的列方向添加values结果如下:
    [[ 6  7 10 11]
     [ 8  9 12 13]]

    3. 考虑axis,如果arr和values的形状不同,则报错:

    import numpy as np
    a=[1,2,3]
    c=[[6,7],[8,9]]
    print(np.append(a,c,axis=0))
    

    输出结果如下:

    Traceback (most recent call last):
      File "F:\eclipse-workspace\test\t1.py", line 4, in <module>
        print(np.append(a,c,axis=0))
      File "E:\anaconda\anzhuang\lib\site-packages\numpy\lib\function_base.py", line 4694, in append
        return concatenate((arr, values), axis=axis)
    ValueError: all the input arrays must have same number of dimensions

    PS:

    偷偷给自己打波小广告,扫码关注微信公众号获取深度学习数据集

    我们不生产数据,我们只是数据的搬运工

    640 (550×339)

     

    展开全文
  • np.c_ 对比 np.r_

    万次阅读 2018-09-15 15:10:43
    import numpy as np a = np.array([1, 2, 3]) b = np.array([4, 5, 6]) c = np.c_[a,b] print(np.r_[a,b]) print(c) print(np.c_[c,a]) np.r_ 是按行连接两个矩阵,就是把两矩阵上下相连,要求列数相等,类似于...

    例子

    import numpy as np
    a = np.array([1, 2, 3])
    b = np.array([4, 5, 6])
    c = np.c_[a,b]
    
    print(np.r_[a,b])
    print(c)
    print(np.c_[c,a])

    np.r_ 是按行连接两个矩阵,就是把两矩阵上下相连,要求列数相等,类似于pandas中的 concat()。

    np.c_ 是按列连接两个矩阵,就是把两矩阵左右相连,要求行数相等,类似于pandas中的 merge()。

    结果:

    [1 2 3 4 5 6]
    
    [[1 4]
     [2 5]
     [3 6]]
    
    [[1 4 1]
     [2 5 2]
     [3 6 3]]

    在 numpy 中,一个列表虽然是横着表示的,但它其实是列向量。

    展开全文
  • 算法:NP问题,NP完全问题(NPC),NPhard问题

    万次阅读 多人点赞 2016-12-14 22:51:03
    在做计算机算法关于NP完全问题这一章的作业的时候,发现有很多概念理解的不是很透彻,然后就反复看老师的讲义,在网上查阅各种资料,花了很多时间来弄懂这块的内容。发现书上的概念太正式,定义太标准,不容易很快...
  • np.linalg.norm(求范数)

    万次阅读 多人点赞 2018-01-15 10:13:24
    x_norm=np.linalg.norm(x, ord=None, axis=None, keepdims=False) ①x: 表示矩阵(也可以是一维) ②ord:范数类型 向量的范数: 矩阵的范数: ord=1:列和的最大值 ord=2:|λE-ATA|=0,求特征值,然...
  • numpy中np.c_和np.r_

    万次阅读 多人点赞 2018-01-11 10:57:06
    import numpy as np a = np.array([1, 2, 3]) b = np.array([4, 5, 6]) c = np.c_[a,b] print(np.r_[a,b]) print(c) print(np.c_[c,a]) np.r_是按列连接两个矩阵,就是把两矩阵上下相加,要求列数相等,类似于...
  • np.vstack()和np.hstack()

    万次阅读 多人点赞 2018-03-13 12:17:41
    在这里我们介绍两个拼接数组的方法:np.vstack():在竖直方向上堆叠np.hstack():在水平方向上平铺import numpy as np arr1=np.array([1,2,3]) arr2=np.array([4,5,6]) print np.vstack((arr1,arr2)) print np.hstack...
  • import numpy as np np.load(vgg16_npy_path, encoding='latin1').item() np.load(vgg16_npy_path, encoding='latin1')是一个ndrarry的类型(该类型是numpy的,类似于tensor类型是tensorflow的) np.load(vgg16_...
  • P问题、NP问题、NP完全问题和NP难问题

    万次阅读 多人点赞 2019-06-12 14:06:30
     NP-Hard问题是这样一种问题,它满足NPC问题定义的第二条但不一定要满足第一条(就是说,NP-Hard问题要比 NPC问题的范围广,NP-Hard问题没有限定属于NP),即所有的NP问题都能约化到它,但是他不一定是一个NP问题...
  • 1、np.random.rand()函数 语法: np.random.rand(d0,d1,d2……dn) 注:使用方法与np.random.randn()函数相同 作用: 通过本函数可以返回一个或一组服从“0~1”均匀分布的随机样本值。随机样本取值范围是[0,1),不...
  • np.vstack, np.hstack

    万次阅读 多人点赞 2017-04-21 15:36:34
    numpy中np.vstack和np.hstack的使用
  • P问题、NP问题、NPC问题、NP-hard问题详解

    万次阅读 多人点赞 2018-09-19 18:44:24
    要理解P问题、NP问题、NPC问题、NP-hard问题,需要先弄懂几个概念: 什么是多项式时间? 什么是确定性算法?什么是非确定性算法? 什么是规约/约化? 多项式时间(Polynomial time) 什么是时间复杂度? 时间...
  • NP-Hard问题浅谈

    万次阅读 多人点赞 2016-07-17 23:26:44
    看相关算法的paper的时候,经常会出现NP-Hard这个词。本博主也不是纯数学系出身,对于这么高深的问题自然没有特别深入独到的理解。但是本博主的习惯就是看到一个东西老在眼前晃来晃去但自己还不是很明白,就有强迫症...
  • 秒懂np.nonzero, np.argwhere, np.where

    千次阅读 2019-04-23 12:12:22
    习惯用np.where,乍看到np.argwhere时没清楚干嘛又多个这玩意儿,干脆理一下。 先创建样本数据如下: np.nonzero 得到数据中非零值的索引数组,如果输入数据为list,则返回一个array,若为两维及以上数据,...
  • P问题、NP问题、NP-C问题、NP-H问题
  • 记录一下numpy.array()的详细用法,以及与np.asarray()和np.ndarray()的区别。 目录 1. Numpy.array()详解 1.1 函数形式 1.2 参数详解 1.3 具体用法 2.Asarray和Array辨析 2.1 object对象是普通迭代序列时 ...
  • P、NP、NPC和NP-Hard相关概念的图形和解释

    万次阅读 多人点赞 2015-10-15 19:48:27
    P、NP、NPC和NP-Hard相关概念的图形和解释 一、相关概念   P: 能在多项式时间内解决的问题  NP: 不能在多项式时间内解决或不确定能不能在多项式时间内解决,但能在多项式时间验证的问题  NPC: ...
  • Python 中的几种矩阵乘法 np.dot, np.multiply, *

    万次阅读 多人点赞 2017-04-18 16:56:38
    同线性代数中矩阵乘法的定义: np.dot()np.dot(A, B):对于二维矩阵,计算真正意义上的矩阵乘积,同线性代数中矩阵乘法的定义。对于一维矩阵,计算两者的内积。见如下Python代码:import numpy as np# 2-D array: 2...
  • python 对矩阵进行复制操作 np.repeat 与 np.tile区别 二者区别 二者执行的是均是复制操作; np.repeat:复制的是多维数组的每一个元素;axis来控制复制的行和列 np.tile:复制的是多维数组本身; import ...
  • np.load和np.save是读写磁盘数组数据的两个主要函数,默认情况下,数组是以未压缩的原始二进制格式保存在扩展名为.npy的文件中。 他们会自动处理元素类型和形状等信息 np.save(file, arr, allow_pickle=True, fix_...
  • 如果为负,整数将四舍五入到小数点左侧的位置 · # -*- coding: utf-8 -*- """ @author: tz_zs """ import numpy as np n = np.array([-0.746, 4.6, 9.4, 7.447, 10.455, 11.555]) around1 = np.around(n) print...
  • 处理数据时经常需要从数组中随机抽取元素,这时候就需要用到np.random.choice()。然而choice用法的官方解释并不详细,尤其是对replace参数的解释,例子也不是很全面。因此经过反复实验,我较为详细的总结出了他的...
  • np.maximum vs np.minimum

    千次阅读 2019-06-27 11:21:47
    一直按照字面意思理解...np.maximum()取对应位置上的大值,np.minimum 取对应位置上的较小值. import numpy as np >>> np.maximum([1,2,3,4,5],2) array([2, 2, 3, 4, 5]) >>> np.minimum([2,...
  • 时间复杂度 P/NP/NPC

    万次阅读 多人点赞 2018-09-06 17:51:48
    你会经常看到网上出现“这怎么做,这不是NP问题吗”、“这个只有搜了,这已经被证明是NP问题了”之类的话。你要知道,大多数人此时所说的NP问题其实都是指的NPC问题。他们没有搞清楚NP问题和NPC问题的概念。NP问题并...
  • np.c_和np.r_的用法解析

    万次阅读 多人点赞 2018-04-23 12:09:27
    np.r_是按列连接两个矩阵,就是把两矩阵上下相加,要求列数相等。np.c_是按行连接两个矩阵,就是把两矩阵左右相加,要求行数相等。具体见示例:1.np.c_的用法a = np.array([[1, 2, 3],[7,8,9]]) b=np.array([[4,5,6...
  • np.array与np.ndarray的区别

    千次阅读 2020-12-13 17:49:42
    import numpy as np # numpy.array() 和 numpy.ndarray()的区别? mat1 = np.array([[1,2,3],[4,5,6]]) print("mat1 data:{}".format(mat1)) print("mat1 type:{}".format(type(mat1))) print("mat1 dtype:{}"....
  • 1、np.mat() np.mat()函数用于将输入解释为矩阵。 np.mat(data, dtype=None) 不同于np.matrix,如果输入本身就已经是matrix或ndarray ,则np.asmatrix不会复制输入,而是仅仅创建了一个新的引用。 相当于np.matrix...
  • np.around()函数用于返回四舍五入后的值,可指定精度。 np.floor()函数用于以元素方式返回输入的下限。 np.ceil()函数用于以元素方式返回输入的上限。 1、np.around np.around(a, decimals=0, out=None ) 对于...

空空如也

空空如也

1 2 3 4 5 ... 20
收藏数 703,530
精华内容 281,412
关键字:

np