Unreleased

Unreleased
Previous release:Version 0.11.1

Frame

  • A Frame can now be constructed from an Arrow table:

    DT = dt.Frame(arrow_table)

    This process uses data Arrow C Data interface, and therefore does not entail data copying.

  • .meta property now provides access to frame’s meta information, if any, as set by datatable functions/methods or by the user.

  • The row selector i in the delete operation del DT[i, :] can now be an unsorted list. The list can also contain duplicate values.

  • When a Frame is shown in a python console, it will now display the stype of each column, as a second line under the column names. #2810

  • A Frame can now be created properly from a list of numpy bool objects. #2762

FExpr

  • Function ifelse() can now accept more than 3 arguments, implementing a chained-if functionality. This is equivalent to CASE WHEN in SQL. #2656

  • New function as_type() that allows casting columns into a different stype. This function is an alternative to the already existing functionality of using the stype itself as a cast function.

  • Function sort() can now accept argument na_positon. It can take three values: "first" (default), "last" and "remove". The values describe the position assigned to NAs after sorting. #793

  • Function cut() can now accept argument bins, that is a list or a tuple of frames containing edges of the binning intervals. #2819

  • When a whole column is updated within a DT[i, j, by()] call, the stype/ltype of that column us now allowed to change. #2685

  • Fix a crash that occurred when using median() on virtual columns of type ArrayView64. #2802

fread

  • Fix an error when reading a file with uneven number of fields and having Windows-style newlines. #2681

  • Fread no longer throws an exception when the list of column types passed to parameter columns= contains str64. #2704

General

  • Datatable no longer supports Python 3.5, because Python 3.5 itself has reached its end of life on 2020-09-13 and will no longer be supported. If you are still using Python 3.5, please consider upgrading. #2642

  • Fixed a memory leak when creating a large number of datatable objects. #2701