You must specify the format separately using the fmt argument, see the documentation here http://docs.scipy.org/doc/numpy/reference/generated/numpy.savetxt.html
To obtain the desired result, you must use the following syntax:
np.savetxt(fname='newPicksData.txt', X=new_picks.astype(int),fmt="%i")
Omitting this argument, the default value is fmt='%.18e' , which is what you see in the output published in the question.
Also, do you really need the astype(int) part in your code? The np.savetext command can format strings / doubles perfectly in int without changing the data itself. This can be demonstrated using the code snippet below:
import numpy x = numpy.array([1.3,2.1,3.9,4.2,5.5,6.1]) numpy.savetxt(fname='newPicksData.txt', X=x, fmt="%i")
Then the specified code fragment displays the following text file:
1 2 3 4 5 6
source share