title: Python: Save data with floats and strings with np.savetxt
body: <p>I am trying to save an array consisting of both floats and one column of strings, and I am getting some really weird results. This is what I have tried:</p>
  
  <pre><code>data = np.column_stack((f1, f2, f3, s1))
  </code></pre>
  
  <p>The first column (<code>f1</code>) is long floats (Up to 10 digits, but I only need 2). I also need 2-3 digits on the second and third column, <code>f2</code> and <code>f3</code> respectively. The last column, <code>s1</code> only consists of two different strings: <code>'FeI'</code> and <code>'FeII'</code>.</p>
  
  <p>The problem is, that when I try to print <code>data</code> I get something like this:</p>
  
  <pre><code>[['7352'  '11.7'  '-4.9'  'FeI']
   ...,
   ['5340'  '22.8'  '-8.2'  'FeII']]
  </code></pre>
  
  <p>While I would like to get something like this (I don't care if it save the floats as strings, as I can easily load them as floats afterwards):</p>
  
  <pre><code>[['7352.91'  '11.78'  '-4.92'  'FeI']
   ...,
   ['53407.66'  '22.82'  '-8.27'  'FeII']]
  </code></pre>
  
  <p>As you can see, the main problem is, that it 53407.66 turns into 5340 - a magnitude off!</p>
  
  <p><strong>Possible solution</strong>
  To use <code>np.array</code> instead and use the <code>dtype</code>-option. However, I don't know how to store a column as strings. Any help?</p>