Versions 0.4.1 through 0.4.3 (September 25 - October 9, 2011)

New features

  • Added Python 3 support using 2to3 (GH200)

  • Added name attribute to Series, now prints as part of Series.__repr__

  • Added instance methods isnull and notnull to Series (GH209, GH203)

  • Added Series.align method for aligning two series with choice of join method (ENH56)

  • Added method get_level_values to MultiIndex (GH188)

  • Set values in mixed-type DataFrame objects via .ix indexing attribute (GH135)

  • Added new DataFrame methods get_dtype_counts and property dtypes (ENHdc)

  • Added ignore_index option to DataFrame.append to stack DataFrames (ENH1b)

  • read_csv tries to sniff delimiters using csv.Sniffer (GH146)

  • read_csv can read multiple columns into a MultiIndex; DataFrame’s to_csv method writes out a corresponding MultiIndex (GH151)

  • DataFrame.rename has a new copy parameter to rename a DataFrame in place (ENHed)

  • Enable unstacking by name (GH142)

  • Enable sortlevel to work by level (GH141)

Performance enhancements

  • Altered binary operations on differently-indexed SparseSeries objects to use the integer-based (dense) alignment logic which is faster with a larger number of blocks (GH205)

  • Wrote faster Cython data alignment / merging routines resulting in substantial speed increases

  • Improved performance of isnull and notnull, a regression from v0.3.0 (GH187)

  • Refactored code related to DataFrame.join so that intermediate aligned copies of the data in each DataFrame argument do not need to be created. Substantial performance increases result (GH176)

  • Substantially improved performance of generic Index.intersection and Index.union

  • Implemented BlockManager.take resulting in significantly faster take performance on mixed-type DataFrame objects (GH104)

  • Improved performance of Series.sort_index

  • Significant groupby performance enhancement: removed unnecessary integrity checks in DataFrame internals that were slowing down slicing operations to retrieve groups

  • Optimized _ensure_index function resulting in performance savings in type-checking Index objects

  • Wrote fast time series merging / joining methods in Cython. Will be integrated later into DataFrame.join and related functions


A total of 2 people contributed patches to this release. People with a “+” by their names contributed a patch for the first time.

  • Thomas Kluyver +

  • Wes McKinney