python 里 np.array 的shape (2,)与(2,1)的分别是什么意思,区别是什么?

如题所述

numpy.ndarray.shap是返回一个数组维度的元组。 (2,)与(2,1)的区别如下:

    ndarray.shape:数组的维度。为一个表示数组在每个维度上大小的整数元组。例如二维数组中,表示数组的“行数”和“列数”。

    ndarray.shape返回一个元组,这个元组的长度就是维度的数目,即ndim属性。

一般情况下:

[1,2]的shape值(2,),意思是一维数组,数组中有2个元素。

[[1],[2]]的shape值是(2,1),意思是一个二维数组,每行有1个元素。

[[1,2]]的shape值是(1,2),意思是一个二维数组,每行有2个元素。

参考资料

NumPy简明教程(二、数组1).CSDN博客[引用时间2017-12-28]

温馨提示:答案为网友推荐,仅供参考
第1个回答  推荐于2018-02-23

numpy.ndarray.shape 返回一个数组维度的元组


比如

import numpy as np
x = np.array([1, 2])
y = np.array([[1],[2]])
print x.shape
print y.shape
>>>
(2,)
(2, 1)


注:

x[1,2]的shape值(2,),意思是一维数组,数组中有2个元素

y[[1],[2]]的shape值是(2,1),意思是一个二维数组,每个数组中有1个元素

本回答被提问者和网友采纳
第2个回答  2020-09-06
这种表达貌似就是区别元组和数字的,(2,)是元组,和(2)相区别,所以这个用法也并不是np.shape()特有的
相似回答