• numpy常用技巧


    numpy.append(arr, values, axis=None)

    数据拼接

    注意是两个数据的拼接

    当不输入axis参数时,此时默认axis = None,两个array的shape可以不一样。否则会出错。

    当输入axis参数时,其所对应axis值的shape被拼在一起,而其他的shape值应当一样。

    此时两个array被拼接在了一起。

    再来一例子:

     可以看到是shape[2](不同部分)被拼接了,但shape[0]和shape[1](相同部分)没变

    numpy.concatenate((a1, a2, ...), axis=0, out=None)

    和numpy.append其实非常像,不过append只支持两个array的拼接,但concatenate支持多个array的拼接。

    参数格式的要求也不太一样,append中前两个参数为输入的array,但concatenate中第一个参数为一个tuple。axis的含义是类似的。

    另外concatenate不支持shape完全不同的array进行组合。

    直接对一个array进行concatenate也是可以的,这相当于将list转为tuple后输入。

    numpy.reshape(a, newshape, order='C')

    改变数据的shape

    第一个参数为array,第二个参数为新的shape

    reshape也可以作为array的成员函数来使用,只有newshape这个参数

    newshape中可以有一个dimension写成-1

    numpy.clip(a, a_min, a_max, out=None)

    取最大最小值

    输入数组a,依次对每个数进行最大最小值操作:a[i] = max(a[i], a_max); a[i] = min(a[i], a_min); 

    numpy.genfromtxt(fname, dtype=<class'float'>, delimiter=None, encoding='bytes', ......)

    从文件中读取数据

    dtype:数据类型

    delimiter:分隔符,默认情况下会以空白符为分隔

    会自动按矩阵的形式读入,文件中的一行对应矩阵中的一行

    例子一:

    例子二:

    文件:

    读取:

    numpy.ndarray.flatten(order='C')

    将数据变成一维

    numpy.power(x1, x2[, out])

    对数组element-wise地取平方

    x2可以是数,也可以是和x1shape一样的array

    如:

     

    numpy.nonzero(a)

    返回array中值为非0元素的下标

    如:

    注意:这里返回tuple中有两个array,第一个array表示非零元素的第一维,第二个array表示非零元素的第二维,例如[0,0]表示第一个非零元素1的下标

    求非0元素的值:

    按元素来表示,而不是按维度来表示:

    numpy.where(condition[, x, y])

    condition为矩阵时,为True用x中的元素,为False用y中的元素(此时condition,x,y三个array的shape相同)

    没有condition参数,默认情况下为numpy.nonzero()

    如:

    condition为矩阵时:

    没有condition参数的默认情况:

    同样没有condition参数,还可以直接加判断条件用:

  • 相关阅读:
    Vue2.0 【第二季】第2节 Vue.extend构造器的延伸
    Vue2.0 【第二季】第1节 Vue.directive自定义指令
    Vue2.0 【第一季】第8节 v-pre & v-cloak & v-once
    Vue2.0 【第一季】第7节 v-bind指令
    c# tcp协议
    easyui笔记
    asp.net get中文传值乱码
    asp.net 调试,Web 服务器被配置为不列出此目录的内容。
    金蝶API 官方demo报错,解决方案
    hbuilder拍照上传,与asp.net服务器获取并保存
  • 原文地址:https://www.cnblogs.com/sbj123456789/p/9168308.html
Copyright © 2020-2023  润新知