Version 0.2.2

Version 0.2.2
Release date:2017-10-18
Next release:Version 0.3.0
Previous release:Version 0.2.1


  • New function dt.Frame.to_csv() to write DataTable into a CSV file. The CSV writer is multi-threaded and extremely fast.

  • Added .internal.column(i).data_pointer getter, to allow native code from other libraries to easily access the data in each column.

  • Fread can now read hexadecimal floating-point numbers: floats and doubles.

  • Csv writer will now auto-quote an empty string, and a string containing leading/trailing whitespace, so that it can be read by fread() reliably.

  • Fread now prints file sizes in “human-readable” form, i.e. KB/MB/GB instead of bytes.

  • Fread can now understand a variety of “NaN”/”Inf” literals produced by different systems.

  • Add option hex to csv writer, which controls whether floats will be written in decimal (default) or hexadecimal format.

  • Csv writer now uses the “dragonfly” algorithm for writing doubles, which is faster than all known alternatives.

  • It is now allowed to pass a single-row numpy array as an argument to dt(rows=...), which will be treated the same as if it was a single-column array.

  • Now datatable’s wheel will include libraries libomp and libc++ on the platforms where they are not widely available.

  • New fread()’s argument logger allows the user to supply custom logging mechanism to fread. When this argument is provided, “verbose” mode is turned on automatically.

  • datatable will no longer attempt to distinguish between NA and NAN floating-point values.

  • Constructing DataTable from a 2D numpy array now preserves shape of that array. At the same time it is no longer true that arr.tolist() == numpy.array(DataTable(arr)).tolist(): the list will be transposed instead.

  • Converting a DataTable into a numpy array now also preserves shape. At the same time it is no longer true that dt.topython() == dt.tonumpy().tolist(): the list will be transposed.

  • The internal _datatable module was moved to datatable.lib._datatable.

  • datatable will now convert huge integers into double inf values instead of raising an exception.


This release was created with the help of 3 people who contributed code and documentation, and 2 more people who submitted bug reports and feature requests.

Code & documentation contributors:

Issues contributors: