title: Python Fuzzy matching strings in list performance
body: <p>I'm checking if there are similar results (fuzzy match) in 4 same dataframe columns, and I have the following code, as an example. When I apply it to the real 40.000 rows x 4 columns dataset, keeps running in eternum. The issue is that the code is too slow. For example, if I limite the dataset to 10 users, it takes 8 minutes to compute, while for 20, 19 minutes. Is there anything I am missing? I do not know why this take that long. I expect to have all results, maximum in 2 hours or less. Any hint or help would be greatly appreciated.</p>
  
  <pre><code>from fuzzywuzzy import process
  dataframecolumn = ["apple","tb"]
  compare = ["adfad","apple","asple","tab"]
  Ratios = [process.extract(x,compare) for x in dataframecolumn]
  result = list()
  for ratio in Ratios:
      for match in ratio:
          if match[1] != 100:
              result.append(match)
              break
  print (result) 
  </code></pre>
  
  <p>Output:
  [('asple', 80), ('tab', 80)]</p>