Version 0.3.1

Version 0.3.1
Release date:2018-04-20
Next release:Version 0.3.2
Previous release:Version 0.3.0


  • Added ability to delete rows from a view Frame.

  • Implemented function countna() function for obj64 columns.

  • New option dt.options.core_logger to help debug datatable.

  • New Frame method dt.Frame.materialize() to convert a view Frame into a “real” one. This method is noop if applied to a non-view Frame.

  • Added several internal options to fine-tune the performance of sorting algorithm.

  • Significantly improved performance of sorting doubles.

  • fread() can now read string columns that are larger than 2GB in size.

  • fread() can now accept a list/tuple of stypes for its columns parameter.

  • Improved logic for auto-assigning column names when they are missing.

  • fread() now supports reading files that contain NUL characters.

  • Added global settings options.frame.names_auto_index and options.frame.names_auto_prefix to control automatic column name generation in a Frame.

  • Eliminated all assert() statements from C code, and replaced them with exception throws.

  • When creating a column of “object” type, we will now coerce float NaN values into None.

  • Renamed fread()’s parameter strip_white into strip_whitespace.

  • Default column names, if none given by the user, are “C0”, “C1”, … for both fread() and Frame constructor.

  • function-valued columns parameter in fread() has been changed: if previously the function was invoked for every column, now it receives the list of all columns at once, and is expected to return a modified list (or dict/set/etc). Each column description in the list that the function receives carries the columns name and stype, in the future format field will also be added.

  • fread() will no longer consume excessive amounts of memory when reading a file with too many columns and few rows.

  • fixed a possible crash when reading CSV file containing long string fields.

  • fread() NA fields with whitespace were not recognized correctly.

  • fread() will no longer emit error messages or type-bump variables due to incorrectly recognized chunk boundaries.

  • Fixed a crash when rbinding string column with non-string: now an exception will be thrown instead.

  • Calling any stats function on a column of obj64 type will no longer result in a crash.

  • Columns/rows slices no longer fail on an empty Frame.

  • Fixed crash when materializing a view frame containing obj64 columns.

  • Fixed erroneous grouping calculations.

  • Fixed sorting of 1-row view frames.


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

Code & documentation contributors:

Issues contributors: