Posts: 16
Threads: 12
Joined: Mar 2019
I don't know why I getting error:
Error: ValueError: operand has more dimensions than subscripts given in einstein sum, but no '...' ellipsis provided to broadcast the extra dimensions.
My code:
from timeit import timeit
import numpy as np
A=np.random.rand(2,2)
B=np.random.rand(2,2)
print(np.einsum('ij,ij->ij', A, B))
print(np.inner(A, B))
print("Test c1 ",timeit('np.einsum("i,i-",np.random.rand(2,2),np.random.rand(2,2))',setup='import numpy as np',number=100))
print("Test c2 ",timeit('np.inner((np.random.rand(2,2)),np.random.rand(2,2))',setup='import numpy as np',number=100))
Posts: 11,871
Threads: 474
Joined: Sep 2016
Please post complete, verbatim error message. It contains valuable information
Posts: 16
Threads: 12
Joined: Mar 2019
OK.
Error: Traceback (most recent call last):
File "<ipython-input-44-981ebe7a58f3>", line 1, in <module>
runfile('C:/Users/Paweł-Kusz/Desktop/zadania python-20190326T002157Z-001/zadania python/funkcja einsum-numpy.py', wdir='C:/Users/Paweł-Kusz/Desktop/zadania python-20190326T002157Z-001/zadania python')
File "C:\Anaconda3\lib\site-packages\spyder_kernels\customize\spydercustomize.py", line 704, in runfile
execfile(filename, namespace)
File "C:\Anaconda3\lib\site-packages\spyder_kernels\customize\spydercustomize.py", line 108, in execfile
exec(compile(f.read(), filename, 'exec'), namespace)
File "C:/Users/Paweł-Kusz/Desktop/zadania python-20190326T002157Z-001/zadania python/funkcja einsum-numpy.py", line 26, in <module>
print("Test c1 ",timeit('np.einsum("i,i-",np.random.rand(2,2),np.random.rand(2,2))',setup='import numpy as np',number=100))
File "C:\Anaconda3\lib\timeit.py", line 232, in timeit
return Timer(stmt, setup, timer, globals).timeit(number)
File "C:\Anaconda3\lib\timeit.py", line 176, in timeit
timing = self.inner(it, self.timer)
File "<timeit-src>", line 6, in inner
File "C:\Anaconda3\lib\site-packages\numpy\core\einsumfunc.py", line 1228, in einsum
return c_einsum(*operands, **kwargs)
ValueError: operand has more dimensions than subscripts given in einstein sum, but no '...' ellipsis provided to broadcast the extra dimensions.
Posts: 11,871
Threads: 474
Joined: Sep 2016
This is a guess, and may be totally off the wall:
print("Test c1 ",timeit('np.einsum("i->...i-",np.random.rand(2,2),np.random.rand(2,2))',setup='import numpy as np',number=100))
|