numpy.savetxt¶
- numpy.savetxt(fname, X, fmt='%.18e', delimiter=' ', newline='\n', header='', footer='', comments='# ')[source]¶
Save an array to a text file.
Parameters: fname : filename or file handle
If the filename ends in .gz, the file is automatically saved in compressed gzip format. loadtxt understands gzipped files transparently.
X : array_like
Data to be saved to a text file.
fmt : str or sequence of strs, optional
A single format (%10.5f), a sequence of formats, or a multi-format string, e.g. ‘Iteration %d – %10.5f’, in which case delimiter is ignored. For complex X, the legal options for fmt are:
- a single specifier, fmt=’%.4e’, resulting in numbers formatted
like ‘ (%s+%sj)’ % (fmt, fmt)
- a full string specifying every real and imaginary part, e.g.
‘ %.4e %+.4j %.4e %+.4j %.4e %+.4j’ for 3 columns
- a list of specifiers, one per column - in this case, the real
and imaginary part must have separate specifiers, e.g. [‘%.3e + %.3ej’, ‘(%.15e%+.15ej)’] for 2 columns
delimiter : str, optional
String or character separating columns.
newline : str, optional
String or character separating lines.
New in version 1.5.0.
header : str, optional
String that will be written at the beginning of the file.
New in version 1.7.0.
footer : str, optional
String that will be written at the end of the file.
New in version 1.7.0.
comments : str, optional
String that will be prepended to the header and footer strings, to mark them as comments. Default: ‘# ‘, as expected by e.g. numpy.loadtxt.
New in version 1.7.0.
See also
- save
- Save an array to a binary file in NumPy .npy format
- savez
- Save several arrays into an uncompressed .npz archive
- savez_compressed
- Save several arrays into a compressed .npz archive
Notes
Further explanation of the fmt parameter (%[flag]width[.precision]specifier):
- flags:
- : left justify
+ : Forces to precede result with + or -.
0 : Left pad the number with zeros instead of space (see width).
- width:
- Minimum number of characters to be printed. The value is not truncated if it has more characters.
- precision:
- For integer specifiers (eg. d,i,o,x), the minimum number of digits.
- For e, E and f specifiers, the number of digits to print after the decimal point.
- For g and G, the maximum number of significant digits.
- For s, the maximum number of characters.
- specifiers:
c : character
d or i : signed decimal integer
e or E : scientific notation with e or E.
f : decimal floating point
g,G : use the shorter of e,E or f
o : signed octal
s : string of characters
u : unsigned decimal integer
x,X : unsigned hexadecimal integer
This explanation of fmt is not complete, for an exhaustive specification see [R280].
References
[R280] (1, 2) Format Specification Mini-Language, Python Documentation. Examples
>>> x = y = z = np.arange(0.0,5.0,1.0) >>> np.savetxt('test.out', x, delimiter=',') # X is an array >>> np.savetxt('test.out', (x,y,z)) # x,y,z equal sized 1D arrays >>> np.savetxt('test.out', x, fmt='%1.4e') # use exponential notation