title: Optimizing processing of a large excel file
body: <p>I am working on a large dataset where I need to read excel files and then find valid numbers but the task takes enormous time for only 500k data. For valid numbers, I am using google phonelib. processing can be done in an async way as they are independent.</p>
  
  <pre class="lang-py prettyprint-override"><code>parts = dask.delayed(pd.read_excel)('500k.xlsx')
  data = dd.from_delayed(parts)
  data['Valid'] = data['Mobile'].apply(lambda x: phonenumbers.is_valid_number(phonenumbers.parse(x)),meta=('Valid','object'))
  </code></pre>
  
  <p>for background </p>
  
  <pre class="lang-py prettyprint-override"><code>phonenumbers.is_valid_number(phonenumbers.parse('+442083661177'))
  </code></pre>
  
  <p>gives output as True</p>
  
  <p>I expect the output to be less than 10sec but it takes around 40s</p>