Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/python/310.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/3/arrays/12.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Python x和y必须具有相同的第一维度,但具有形状(2700)和(200)_Python_Arrays_Numpy_Matrix - Fatal编程技术网

Python x和y必须具有相同的第一维度,但具有形状(2700)和(200)

Python x和y必须具有相同的第一维度,但具有形状(2700)和(200),python,arrays,numpy,matrix,Python,Arrays,Numpy,Matrix,我有一个NumPy数组(2,4),我想把它向左旋转90度,我使用np.rot90 例如,如果我的数组是 x = [[5,6,7,8], [1,2,3,4]] 当我旋转时,它会 y = [[8,4], [7,3], [6,2], [5,1]] x是(2,4)NumPy数组,y将是(4,2) 但是当我运行这个代码时,我得到了这个失败 x and y must have the same f

我有一个NumPy数组(2,4),我想把它向左旋转90度,我使用
np.rot90

例如,如果我的数组是

x = [[5,6,7,8],
     [1,2,3,4]]
当我旋转时,它会

y = [[8,4],
     [7,3],
     [6,2],
     [5,1]]
                                 
x
是(2,4)NumPy数组,
y
将是(4,2)

但是当我运行这个代码时,我得到了这个失败

x and y must have the same first dimension, but have shapes (4,) and (2,)

不是强迫性的美丽,而是工作:

import numpy as np

x = [[5,6,7,8],

     [1,2,3,4]]

​

y = np.zeros((len(x[0]),len(x)), dtype = int)

​

for i,j,k in zip(x[0], x[1], range (0,len(x[0]))):

    y[len(x[0])-1-k] = [i,j]

    np.asmatrix(y)

print (y)

[[8 4],
 [7 3],
 [6 2],
 [5 1]]

哪一行代码给出了错误消息?如果在赋值之前删除
y=
,然后只执行
np.rot90(x)
那么错误消息是什么?我尝试了你的代码,它返回
y
作为例外旋转。这不是我真正的数组。我的数组包含3.276800000e+04之类的数字。可能是因为这个原因我才失败。请提供一个。您当前的示例似乎没有重现错误。
import numpy as np

x = [[5,6,7,8],

     [1,2,3,4]]

​

y = np.zeros((len(x[0]),len(x)), dtype = int)

​

for i,j,k in zip(x[0], x[1], range (0,len(x[0]))):

    y[len(x[0])-1-k] = [i,j]

    np.asmatrix(y)

print (y)

[[8 4],
 [7 3],
 [6 2],
 [5 1]]