I'm taking a course about Applied Statistics. I use Python, or more specifically, Jupyter Notebook. One of my labs consists of performing basic operations on data fitting. I mostly used pandas, numpy and matplotlib (sorry, can't remember the exact name but something like that). I find that my teacher used the "@" sign to do multiplication for two matrixes (given that they are multiply-able). When I tried to use the basic * to multiply, the terminal told that:
operands could not be broadcast together with shapes
Here's an example, in this one, a and b are 2d-matrices. a.T is a transposed matrix. I perform an operation:
thetaMatrix = np.linalg.inv(a.T@a) @ (a.T@b)
So what is the problem I'm having at the moment? I don't see any difference between the "@" and the "*". Thanks in advance.