Python numpy数组形状中只有一个元素
我有一个从列表转换的数组,当我试图得到它的形状时,我只得到一个数字。像这样:Python numpy数组形状中只有一个元素,python,arrays,numpy,Python,Arrays,Numpy,我有一个从列表转换的数组,当我试图得到它的形状时,我只得到一个数字。像这样: list1=[1,2,3,4,5] a1=numpy.array(list1) print a1.shape 我得到了 (5,) 然后我试着 list2=[[1,2,3,4,5]] a2=numpy.array(list2) list3=[[1],[2],[3],[4],[5]] a3=numpy.array(list3) print a1
list1=[1,2,3,4,5]
a1=numpy.array(list1)
print a1.shape
我得到了
(5,)
然后我试着
list2=[[1,2,3,4,5]]
a2=numpy.array(list2)
list3=[[1],[2],[3],[4],[5]]
a3=numpy.array(list3)
print a1+a2
print a1+a3
我明白了
[[ 2 4 6 8 10]]
[[ 2 3 4 5 6]
[ 3 4 5 6 7]
[ 4 5 6 7 8]
[ 5 6 7 8 9]
[ 6 7 8 9 10]]
似乎a1的工作原理与a2类似。我能那样想吗?如果我将a1视为a2,除了形状方法之外,还会导致问题吗?你可以看到,它已经澄清了与numpy形状相关的所有事情。(编辑:标记为同一问题副本的问题)
这段简单的代码还可以帮助您获得一些见解:
import numpy as np
list1=[1,2,3,4,5]
a=np.array(list1)
print a.shape
# (5,)
## set be to be the transpose of a
b = a.T
print b.shape
# (5,)
print np.inner(a,b)
# 55
print np.inner(a,a)
# 55
你可以看到,它已经澄清了所有与numpy形状有关的事情。(编辑:标记为同一问题副本的问题)
这段简单的代码还可以帮助您获得一些见解:
import numpy as np
list1=[1,2,3,4,5]
a=np.array(list1)
print a.shape
# (5,)
## set be to be the transpose of a
b = a.T
print b.shape
# (5,)
print np.inner(a,b)
# 55
print np.inner(a,a)
# 55
尝试:
这将为您提供(1,5),一行,5列
这是:
list1=[[1],[2],[3],[4],[5]]
a=numpy.array(list1)
print a.shape
将获得(5,1)请尝试:
这将为您提供(1,5),一行,5列
这是:
list1=[[1],[2],[3],[4],[5]]
a=numpy.array(list1)
print a.shape
将得到(5,1)对于一维数组,问题可能不相关。如果是二维列表,则会得到二维,但因为它只是一维列表,所以只有一维。你用的是什么教程?也许对于一维数组,这个问题不相关。如果是二维列表,你会得到二维,但因为它只是一维列表,所以只有一维。你用的是什么教程?