Write a raw binary file with NumPy array data

binary, numpy, python

Solution

I think the easiest way to do this is to first convert the array to int16,

array.astype('int16').tofile(filename)

Problem

I'd like to save the contents of a numpy float array into a raw binary file as signed 16 bit integers. I tried to accomplish this using ndarray.tofile but I can't figure out the right format string. It seems that the file is saved in double format, mo matter how I choose the format string. How do I do this? Thanks.

Original source