title: How to speed up projection conversion?
body: <p>I want to project many coordinates. For example, 4 million coordinates.</p>
  
  <p>First, I tested with 100 coordinates. The test result was 13.95 sec.</p>
  
  <p>In calculation, it takes 155 hours to process 4 million coordinates.</p>
  
  <p>Is there a good way to get results as fast as possible?</p>
  
  <pre><code>import pandas as pd
  import pyproj
  import time
  
  def projection(points):
      from_proj = pyproj.Proj('EPSG:4326')
      to_proj = pyproj.Proj('EPSG:2448')
      points[0], points[1] = pyproj.transform(from_proj, to_proj, points[1], points[0], always_xy=True)
      return points
  
  data = pd.read_csv('data.txt', header=None, delim_whitespace=True)
  
  start = time.perf_counter()
  output = data.apply(projection, axis=1)
  end = time.perf_counter()
  print('{0} sec.'.format(end - start))
  </code></pre>
  
  <p>data.txt</p>
  
  <pre><code>34.705185 135.498468
  ...
  </code></pre>