zoukankan      html  css  js  c++  java
  • shape与reshape区别

    shape可以查看数组的结构
    reshape可以改变数组结构

    1.shape
    当数组是一维数组的时候(通俗的讲只有一个数组的时候)
    使用shape显示的该数组的元素个数,指的是该数组的列数

    import numpy as np
    def shape1():
        data=np.array([2,3])
        print(data.shape)
    if __name__=="__main__":
        shape1()

    输出的值为:
    (2,)
    代表该数组有两列

    当数组是多维数组的时候,使用shape显示的是行列数

    import numpy as np
    def shape1():
        data=np.array([[2,3],[5,6],[9,77]])
        print(data.shape)
    if __name__=="__main__":
        shape1()
    

    结果是:
    (3, 2)

    表示该数组有三行两列

    注意
    shape[0]表示输出数组的行数
    shape[1]表示输出数组的列数
    shape()表示输出行列数

    import numpy as np
    def shape1():
        data=np.array([[2,3],[5,6],[9,77]])
        print(data.shape[0])
    if __name__=="__main__":
        shape1()
    

    结果:
    3
    表示该数组有3行

    2.reshape

    改变数组的形状,但是原数据不会发生改变。但是reshape的参数要满足它们的乘积要等于数据的总个数

    def reshape1():
        data=np.array([3,5,6,78,9,0])
        data=data.reshape(2,3)
        print(data)
    if __name__=="__main__":
        reshape1()
        # shape1()

    结果:
    [[ 3 5 6]
    [78 9 0]]

    reshape(2,3)表示将原数组结构改变成两行三列
    将3变成-1也可以,计算机可以根据前面已给出的行数进行计算等价于
    reshape(2,-1)
    意思是在元素总数不变的情况下进行切割

  • 相关阅读:
    数据分析05 /pandas的高级操作
    ABP之应用服务(2)
    ABP之应用服务(1)
    ABP之仓储
    ABP之创建实体
    ABP之框架体系
    ABP之项目的搭建
    2018年,加油!!!
    WF的简单使用
    WCF之通信工厂的简单使用
  • 原文地址:https://www.cnblogs.com/Xiong-Jun/p/13515040.html
Copyright © 2011-2022 走看看