Version 0.20.2 (June 4, 2017)#
This is a minor bug-fix release in the 0.20.x series and includes some small regression fixes, bug fixes and performance improvements. We recommend that all users upgrade to this version.
What’s new in v0.20.2
Enhancements#
- Unblocked access to additional compression types supported in pytables: ‘blosc:blosclz, ‘blosc:lz4’, ‘blosc:lz4hc’, ‘blosc:snappy’, ‘blosc:zlib’, ‘blosc:zstd’ (GH 14478) 
- Seriesprovides a- to_latexmethod (GH 16180)
- A new groupby method - GroupBy.ngroup(), parallel to the existing- GroupBy.cumcount(), has been added to return the group order (GH 11642); see here.
Performance improvements#
- Performance regression fix when indexing with a list-like (GH 16285) 
- Performance regression fix for MultiIndexes (GH 16319, GH 16346) 
- Improved performance of - .clip()with scalar arguments (GH 15400)
- Improved performance of groupby with categorical groupers (GH 16413) 
- Improved performance of - MultiIndex.remove_unused_levels()(GH 16556)
Bug fixes#
- Silenced a warning on some Windows environments about “tput: terminal attributes: No such device or address” when detecting the terminal size. This fix only applies to python 3 (GH 16496) 
- Bug in using - pathlib.Pathor- py.path.localobjects with io functions (GH 16291)
- Bug in - Index.symmetric_difference()on two equal MultiIndex’s, results in a- TypeError(GH 13490)
- Bug in - DataFrame.update()with- overwrite=Falseand- NaN values(GH 15593)
- Passing an invalid engine to - read_csv()now raises an informative- ValueErrorrather than- UnboundLocalError. (GH 16511)
- Bug in - cut()when- labelsare set, resulting in incorrect label ordering (GH 16459)
- Fixed a compatibility issue with IPython 6.0’s tab completion showing deprecation warnings on - Categoricals(GH 16409)
Conversion#
- Bug in - to_numeric()in which empty data inputs were causing a segfault of the interpreter (GH 16302)
- Silence numpy warnings when broadcasting - DataFrameto- Serieswith comparison ops (GH 16378, GH 16306)
Indexing#
- Bug in - DataFrame.reset_index(level=)with single level index (GH 16263)
- Bug in partial string indexing with a monotonic, but not strictly-monotonic, index incorrectly reversing the slice bounds (GH 16515) 
- Bug in - MultiIndex.remove_unused_levels()that would not return a- MultiIndexequal to the original. (GH 16556)
IO#
- Bug in - read_csv()when- commentis passed in a space delimited text file (GH 16472)
- Bug in - read_csv()not raising an exception with nonexistent columns in- usecolswhen it had the correct length (GH 14671)
- Bug that would force importing of the clipboard routines unnecessarily, potentially causing an import error on startup (GH 16288) 
- Bug that raised - IndexErrorwhen HTML-rendering an empty- DataFrame(GH 15953)
- Bug in - read_csv()in which tarfile object inputs were raising an error in Python 2.x for the C engine (GH 16530)
- Bug where - DataFrame.to_html()ignored the- index_namesparameter (GH 16493)
- Bug where - pd.read_hdf()returns numpy strings for index names (GH 13492)
- Bug in - HDFStore.select_as_multiple()where start/stop arguments were not respected (GH 16209)
Plotting#
GroupBy/resample/rolling#
Sparse#
- Bug in construction of - SparseDataFramefrom- scipy.sparse.dok_matrix(GH 16179)
Reshaping#
- Bug in - DataFrame.stackwith unsorted levels in- MultiIndexcolumns (GH 16323)
- Bug in - pd.wide_to_long()where no error was raised when- iwas not a unique identifier (GH 16382)
- Bug in - Series.isin(..)with a list of tuples (GH 16394)
- Bug in construction of a - DataFramewith mixed dtypes including an all-NaT column. (GH 16395)
- Bug in - DataFrame.agg()and- Series.agg()with aggregating on non-callable attributes (GH 16405)
Numeric#
- Bug in - .interpolate(), where- limit_directionwas not respected when- limit=None(default) was passed (GH 16282)
Categorical#
- Fixed comparison operations considering the order of the categories when both categoricals are unordered (GH 16014) 
Other#
- Bug in - DataFrame.drop()with an empty-list with non-unique indices (GH 16270)
Contributors#
A total of 34 people contributed patches to this release. People with a “+” by their names contributed a patch for the first time.
- Aaron Barber + 
- Andrew 亮 + 
- Becky Sweger + 
- Christian Prinoth + 
- Christian Stade-Schuldt + 
- DSM 
- Erik Fredriksen + 
- Hugues Valois + 
- Jeff Reback 
- Jeff Tratner 
- JimStearns206 + 
- John W. O’Brien 
- Joris Van den Bossche 
- JosephWagner + 
- Keith Webber + 
- Mehmet Ali “Mali” Akmanalp + 
- Pankaj Pandey 
- Patrick Luo + 
- Patrick O’Melveny + 
- Pietro Battiston 
- RobinFiveWords + 
- Ryan Hendrickson + 
- SimonBaron + 
- Tom Augspurger 
- WBare + 
- bpraggastis + 
- chernrick + 
- chris-b1 
- economy + 
- gfyoung 
- jaredsnyder + 
- keitakurita + 
- linebp 
- lloydkirk +