zoukankan      html  css  js  c++  java
  • numpy学习笔记

    第一篇:数组创建

    第二篇:数组操作篇

    #数组访问、排序、比较

    arr = np.array([2.,6.,5.,5.])
    print(arr[:3]) #前三个元素
    print(arr[2]) #下标为2的元素
    arr[0] = 7 #下标为0的元素赋值为5
    print(arr) #输出整个数组
    np.unique(arr) #返回消除重复的元素
    np.sort(arr) #返回排序后的元素(从小到大)
    np.argsort(arr) #返回排序后的元素下标(从小到大)
    np.random.shuffle(arr) #调整数组元素使随机排列,注意是直接改变了数组,而不是返回副本
    np.array_equal(arr,np.array([1,3,2])) #相等,形状和元素是否均相等,列表则使用cmp函数
    matrix = np.array([[4.,5,6.],[2,3,6]], float)
    matrix[0,2] #访问二维数组维度分割用逗号,而列表用multilist[0][2]
    #对数组各维度进行切片操作
    matrix[0:1,1:2] #
    matrix[1,:] #只有:表本维度所有
    matrix[:,2]
    matrix[-1:, -2:] #-2表从本维度倒数第二个元素开始往后数
    #flatten函数可将多维数组变为一维
    matrix.flatten() #按行拼接成一维
    matrix.shape #返回数组形状
    matrix.dtype #返回数组元素类型
    #数组元素数据类型转换
    int_matrix = matrix.astype(np.int32) #将数组元素转换为int32
    #返回数组第一维的长度:
    len(matrix)
    matrix.shape[0]
    #关键字in,判断数组中是否包含某个元素
    print(2 in arr) #输出True or False
    #reshape函数可调整数组维度
    arr = np.array(range(8), float)
    arr = arr.reshape((4,2)) #一维数组变为4x2
    #数组转置
    arr.transpose()
    arr.T #两者效果一样,都返回转置后的副本
    #增加维度,用newaxis
    arr = np.random.rand(3)
    arr[:,np.newaxis] #返回副本,维度3x1
    arr[np.newaxis, :] #返回副本,维度1x3
    #数组连接操作
    arr1= np.array([[11,12],[32,42]], float)
    arr2= np.array([[54,26],[27,28]], float)
    arr = np.concatenate((arr1, arr2)) #默认按第一维度连接
    arr = np.concatenate((arr1, arr2), axis=0)
    arr = np.concatenate((arr1, arr2), axis=1) #按第二维度进行连接
    #数组和字符串转换
    arr = np.array([10,20,30], float)
    str = arr.tostring()

    #三、数组运算

    #四、线性代数运算

  • 相关阅读:
    docker 构建带健康检查的redis镜像
    HP服务器 开启ILO
    [转]如何取得当前正在执行的shell脚本的绝对路径?
    解决方案:centos运行shell脚本时报“$' ': 未找到命令”
    Js控制滚动条
    json_decode时含有中文是解码问题(json_decode返回为null)
    Phaser开源2d引擎 html5游戏框架中文简介
    js 开启video全屏模式
    修改mysql用户名密码 和 PHPmysqlAdmin对应密码修改
    用javascript判断一个html元素是否存在的五种方法:
  • 原文地址:https://www.cnblogs.com/LuffysMan/p/9904942.html
Copyright © 2011-2022 走看看