title: Return column names for 3 highest values in rows
body: <p>I'm trying to come up with a way to return the column names for the 3 highest values in each row of the table below. So far I've been able to return the highest value using idxmax but I haven't been able to figure out how to get the 2nd and 3rd highest. </p>
  
  <pre><code>   Clust  Stat1    Stat2    Stat3    Stat4    Stat5    Stat6  
  0  9      0.00     0.15     0.06     0.11     0.23     0.01    
  1  4      0.00     0.25     0.04     0.10     0.10     0.00    
  2  11     0.00     0.34     0.00     0.09     0.24     0.00     
  3  12     0.00     0.16     0.00     0.11     0.00     0.00       
  4  0      0.00     0.35     0.00     0.04     0.02     0.00     
  5  17     0.01     0.21     0.02     0.18     0.27     0.01 
  </code></pre>
  
  <p>Expected output:</p>
  
  <pre><code>   Clust  Stat1    Stat2    Stat3    Stat4    Stat5    Stat6      TopThree
  0  9      0.00     0.15     0.06     0.11     0.23     0.01   [Stat5,Stat2,Stat4]  
  1  4      0.00     0.25     0.04     0.10     0.10     0.00   [Stat2,Stat4,Stat5]       
  2  11     0.00     0.34     0.00     0.09     0.24     0.00   [Stat2,Stat5,Stat4]        
  3  12     0.00     0.16     0.00     0.19     0.00     0.01   [Stat4,Stat2,Stat6]          
  4  0      0.00     0.35     0.00     0.04     0.02     0.00   [Stat2,Stat4,Stat5]        
  5  17     0.01     0.21     0.02     0.18     0.27     0.01   [Stat5,Stat2,Stat4]   
  </code></pre>
  
  <p>If anyone has ideas on how to do this I'd appreciate it. </p>