Skip to content

Pre-release alpha v0.2.2

Pre-release
Pre-release
Compare
Choose a tag to compare
@st-pasha st-pasha released this 18 Oct 17:26

Added

  • Ability to write DataTable into a CSV file: the .to_csv() method. 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.

Changed

  • 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.
  • 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.

Fixed

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