title: pandas dataframe search string in the entire row
body: <p>I have a pandas dataframe like below. I want to search a text in each row of the dataframe and highlight if that text appears in the row.</p>
  
  <p>For example, I want to search each row for "jones". I want to ignore the case of my search word. In the below case, I would like to add a new column to data called "jones" and it would have values 1,1,0 as that word was found in 1st and 2nd row</p>
  
  <p>I found <a href="https://stackoverflow.com/questions/32616261/filtering-pandas-dataframe-rows-by-contains-str">this</a> post which shows how to find a text in a column, but how could I find a text when I have many columns - say 50+? I thought about concatenating all the columns and creating a new column, but didn't see any function that would concatenate all columns of a dataframe (without asking to type each column name)</p>
  
  <p>I would like to do this for multiple keywords that I have. For example I have list of keyword <code>LLC, Co, Blue, alpha</code> and many more (30+)</p>
  
  <pre><code>sales = [{'account': 'Jones LLC', 'Jan': '150', 'Feb': '200', 'Mar': '140'},
           {'account': 'Alpha Co',  'Jan': 'Jones', 'Feb': '210', 'Mar': '215'},
           {'account': 'Blue Inc',  'Jan': '50',  'Feb': '90',  'Mar': '95' }]
  df = pd.DataFrame(sales)
  </code></pre>
  
  <p>Source DF:</p>
  
  <pre><code>   Feb    Jan  Mar    account
  0  200    150  140  Jones LLC
  1  210  Jones  215   Alpha Co
  2   90     50   95   Blue Inc
  </code></pre>
  
  <p>Desired DF:</p>
  
  <pre><code>   Feb    Jan  Mar    account  jones  llc  co  blue  alpha
  0  200    150  140  Jones LLC      1    1   0     0      0
  1  210  Jones  215   Alpha Co      1    0   1     0      1
  2   90     50   95   Blue Inc      0    0   0     1      0
  </code></pre>