title: Pandas: unpack a column with list of dict values into multiple columns
body: <p>I have a df that looks like this</p>
  
  <pre><code>            COL1   COL2    COL3                             
  0         ABC      N       [{u'PERF_PCT': 0.2,u'PERF_DATE': 12},{u'PERF_PCT': 0.3,u'PERF_DATE': 13}]
  1         XYZ      N       [{u'PERF_PCT': 0.6,u'PERF_DATE': 12},{u'PERF_PCT': 0.2,u'PERF_DATE': 13},{u'PERF_PCT': 0.7,u'PERF_DATE': 14}] 
  </code></pre>
  
  <p>I need to unpack column 3 such that the dataframe has additional rows for each dictionary in the list in COL3 and additional columns for each key in the dict. The key-value pairs in the dict are fixed.</p>
  
  <pre><code>          COL1    COL2     PERF_PCT       PERF_DATE              
  0         ABC      N       0.2            12
  1         ABC      N       0.3            13
  2         XYZ      N       0.6            12 
  3         XYZ      N       0.2            13
  4         XYZ      N       0.7            14 
  </code></pre>
  
  <p>I have been able to accomplish the same using a for loop but I need something extremely performant. The resultant df can have around 170k records and currently using the for loop it takes about 20+ seconds which is unacceptable. I am hoping using pandas specific apply or other functions can make this faster but have not been able to do so. If there's an extremely fast way to do this I'll be really grateful. Thanks.</p>