title: Differentiate a list between human names and company names
body: <p>I have a list of companies, but some of these companies are simply names of people. I want to eliminate these people from the list, but I am having trouble finding a way to identify the names of people from the companies. </p>
  
  <p>Through online research I have tried two ways. The first is using the <code>nltk</code>. My code looks like </p>
  
  <pre><code>y = ['INOVATIA LABORATORIES LLC', 'PRULLAGE PHD JOSEPH B', 'S J SMITH CO INC', 'TEVA PHARMACEUTICALS USA INC', 'KENT NUTRITION GROUP INC', 'JOSEPH D WAGENKNECHT', 'ROBERTSON KEITH', 'LINCARE INC', 'AGCHOICE - BLUE MOUND']
  </code></pre>
  
  <p>In the above list I would want to remove <code>PRULLAGE PHD JOSEPH B</code>, <code>JOSEPH D WAGENKNECHT</code>, and <code>ROBERTSON KEITH</code>.</p>
  
  <pre><code>z = []
  for company in y:
      tokens = nltk.tokenize.word_tokenize(company)
      z.append(nltk.pos_tag(tokens))
  </code></pre>
  
  <p>This does not work because it tags everything as a proper noun. I then lowercased everything and only made the first letter of each word uppercase using the <code>.title()</code>, but this also failed for similar reasons. </p>
  
  <p>The other method I tried was using the <code>Human Name Parser</code> module, but this also did not work because it tags the company names as the first and last name of the person. </p>
  
  <p>Is there a way that I can differentiate the above list between human names and company names?</p>