title: Is this a good result for normal equations,if not how do I know it's good for data set?
body: <p>I'm trying to learn normal equations for ML but I'm not sure this result are correct.Parameters are so high and I cannot find hypothesis for this parameters, here is what I mean:</p>
  
  <p>Data set:</p>
  
  <pre class="lang-none prettyprint-override"><code>2104,5,1,45,460
  1416,3,2,40,232
  1534,3,2,30,315
  852,2,1,36,178
  </code></pre>
  
  <p>When I run code I'm taking parameters (theta)</p>
  
  <pre><code>[4.74289062e+02  1.65405273e-01  -4.68750000e+00  -1.16445312e+02
   -2.13281250e+00]
  </code></pre>
  
  <p>but these numbers are so high. Is this normal? Also, last line in my code, I tried to print hypothesis just for my first data set elements (2104,5,1,45,460), but it's giving to me an error like this:</p>
  
  <pre class="lang-none prettyprint-override"><code>print (q[0]*x[0][0])+(q[1]*x[0][1])+(q[2]*x[0][2])+(q[3]*x[0][3])+(q[4]*x[0][4])
    IndexError: index out of bounds
  </code></pre>
  
  <p>My code:</p>
  
  <pre><code>data = np.loadtxt('bib', delimiter=',');
  x=data[:,0:4];
  y=data[:,4];
  a=np.ones(shape=(y.size,x[0].size+1));
  a[:,1:5]=x;
  A=np.linalg.inv(a.transpose().dot(a));
  B=np.dot(a.transpose(),y);
  q=A.dot(a.transpose()).dot(y);
  ##print (q[0]*x[0][0])+(q[1]*x[0][1])+(q[2]*x[0][2])+(q[3]*x[0][3])+(q[4]*x[0][4])
  </code></pre>
  
  <p>I did not satisfied with these results. How can I make sure these results are true and how should I find my hypothesis with these parameters?</p>