zoukankan      html  css  js  c++  java
  • Numpy学习笔记(四)

    import numpy as np
    
    a = np.floor(10*np.random.random((3, 4)))  # np.random.random生成[0,1)之间的浮点数,np.floor得到不大于输入元素的最大整数
    print(a)
    print(a.shape)
    
    
    a.ravel()  # ravel将多维数组转化为一维数组,np.ravel()赋值时会改变原始数组,np.flatten()赋值时不会改变原始数组,两a改变数组的形状者都不会
    
    a.reshape(6,2)  # 临时改变a的形状,不改变a的原始形状
    
    print(a.T)  # 获得a的转置矩阵
    
    print(a.T.shape)
    
    print(a.shape)
    
    # reshape 函数返回具有修改形状的参数,不改变原始的形状,而 ndarray.resize 方法修改数组本身
    print(a)
    a.resize((2, 6))
    print(a)
    
    # 如果在reshape操作中将维度指定为-1,则会自动计算其他维度
    a.reshape(3, -1)    # 第一轴的维度为3,如果第二个参数是-1.则第二轴的维度根据元素个数自动计算
    
    # 不同数组叠加在一起
    a = np.floor(10*np.random.random((2, 2)))
    b = np.floor(10*np.random.random((2, 2)))
    
    np.vstack((a, b))   # 沿着第一轴堆叠起来
    np.hstack((a, b))   # 沿着第二轴堆叠起来
    
    # 函数 column_stack 将1D数组作为列叠加到2D数组中。它相当于仅用于二维数组的 hstack
    
    from numpy import newaxis
    np.column_stack((a, b))     # 2维的相当于np,hstack()
    
    a = np.array([4., 2.])
    b = np.array([3., 8.])
    np.column_stack((a, b))     # a的值作为新数组的第一列,b的值作为新数组的第二列
    
    np.hstack((a, b))           # 而hstack()返回的是一行数组
    
    a[:, newaxis]               # 增加一个新的维度,此时为a.shape = (2,1)
    
    np.column_stack((a[:, newaxis], b[:, newaxis]))
    
    np.hstack((a[:, newaxis], b[:, newaxis]))   # 现在column_stack和hstack一样了
  • 相关阅读:
    图形2d,3d加速简介
    [转]startx启动过程分析
    initrd.img、vmlinux和 vmlinuz
    TSQL建主键索引语句 / 外键
    ASP.NET MVC 2.0在WinXP IIS6下的部署
    update中加入select
    Request
    jqGrid使用总结
    Jquery 表单取值赋值 处理返回json数据
    108个搞笑经典短句(转)
  • 原文地址:https://www.cnblogs.com/smartmsl/p/10604738.html
Copyright © 2011-2022 走看看