So, I tried out your suggestion.
First, doing
price = intercept + np.dot(beta,train_norm)
ran endlessly without any messages (and I have a fairly decent cpu so something else must have been not working).
Next, being inspired by the suggestion and looking up the api quickstart more closely, I tried,
price = intercept + beta.dot(train_norm)
, which actually ran (displaying a message about theano first), but ended up giving me a new error:
shapes (270,) and (1460,270) not aligned: 270 (dim 0) != 1460 (dim 0).
Attempting to fix that by manually inputting the shape instead as shape=(1460,270) (I have 1460 rows and 270 variable columns in the input dataframe), gave me the error now
shapes (1460,270) and (1460,270) not aligned: 270 (dim 1) != 1460 (dim 0)
I am rather confused. I would appreciate any more help greatly.