I am trying to reshape I1
from (7,2)
to (1,7,2)
by means of a variable k
which has the shape of old I1
. But I get an error. Is there a way to do it?
import numpy as np
I1= np.array([[0, 1],
[0, 2],
[1, 3],
[2, 3],
[2, 5],
[3, 6],
[5, 6]])
k=I1.shape
I1=I1.reshape(1,k)
The error is
<module>
I1=I1.reshape(1,k)
TypeError: 'tuple' object cannot be interpreted as an integer
CodePudding user response:
Because k is a tuple with 2 elements, when it's passed to a function, an asterisk *
is needed.
Instead of I1 = I1.reshape(1, k)
, try I1 = I1.reshape(1, *k)