title: How to merge two string columns where the one is subset of the other
body: <p>I have <code>DF1</code> and a <code>DF2</code> which i want to merge on the left side (on the <code>['text']</code> column)</p>
  
  <p>The <code>DF2['text']</code> has some strings that are substrings of the <code>DF1['text']</code>. </p>
  
  <p>I tried looping dirty with a double loop, but <code>DF1</code> is around 200k lines and <code>DF2</code> around 2k, so the time seems to be long ( best case scenario)</p>
  
  <pre class="lang-py prettyprint-override"><code>DF1
  id   text                           
  1    'some text with details'       
  2    'which are not always good'    
  3    'irrelevant text'   
  4    'I want to get rid of them'
  5    'more irrelevant cells'
  
  DF2
  id   text                           tag
  1    'with details'                 'Good'
  2    'which are not'                'Bad'
  3    'to get rid of'                'semiGood'
  </code></pre>
  
  <pre class="lang-py prettyprint-override"><code>for i in range(len(DF2)):
      for k in range(len(DF1)):
          if DF2['text'][i] in DF2['text'][k]:
              DF1.loc[:,'tag'].iloc[k] = DF2['tag'][i]
  </code></pre>
  
  <p>Expected output:</p>
  
  <pre class="lang-py prettyprint-override"><code>DF1
  id   text                           tag
  1    'some text with details'       'Good'
  2    'which are not always good'    'Bad'
  3    'irrelevant text'              
  4    'I want to get rid of them'    'semiGood'
  5    'more irrelevant cells'
  </code></pre>
  
  <p>I would love to find a way to do this in less than 5 days that the double loop would require. Is there something?</p>