title: Python pandas dataframe ValueError: Trying to store a string with len
body: <p>I have a dict of objects. </p>
  
  <pre><code>data = [{'a': 'qwerty', 'b': 123}]
  </code></pre>
  
  <p>I create a dataframe: </p>
  
  <pre><code>df = pd.DataFrame(data)
  </code></pre>
  
  <p>now I want to persist it:</p>
  
  <pre><code>df.to_hdf(filename, 'book', table=True, mode='a', append=True)
  </code></pre>
  
  <p>now I want to persist another batch of data that slightly longer in size:</p>
  
  <pre><code>data = [{'a': 'qwerty2', 'b': 123}]
  df = pd.DataFrame(data)
  df.to_hdf(filename, 'book', table=True, mode='a', append=True)
  </code></pre>
  
  <p>it fails with error:</p>
  
  <pre><code>ValueError: Trying to store a string with len [7] in [values_block_2] column but
  this column has a limit of [6]!
  Consider using min_itemsize to preset the sizes on these columns
  </code></pre>
  
  <p>It basically works when only when I keep the size of column the same size but if it is different I am getting the error above. How do I make pandas to work with any size of the string? </p>