title: Fastest way to create a numpy matrix with multiples of a vector
body: <p>Let x,y be two numpy arrays of N elements. I want to create a numpy matrix whose columns are scaled-shifted versions of x. For instance, say </p>
  
  <pre><code>m=[0.2, 0.4, 1.2]
  </code></pre>
  
  <p>Then I want the matrix </p>
  
  <blockquote>
    <p><code>X = [0.2x+y, 0.4x+y, 1.2x+y]</code></p>
  </blockquote>
  
  <p>What's the fastest (easiest as well, easiest being second priority) way to do this.</p>
  
  <p>Currently I am doing something like this.  </p>
  
  <pre><code>ListVec = [m[i]*x+y for i in numpy.arange(len(m))]
  X = numpy.array(ListVec).T
  </code></pre>