This is a minor bug-fix release from 0.19.0 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.19.1
Performance improvements
Bug fixes
Contributors
Fixed performance regression in factorization of Period data (GH14338)
Period
Fixed performance regression in Series.asof(where) when where is a scalar (GH14461)
Series.asof(where)
where
Improved performance in DataFrame.asof(where) when where is a scalar (GH14461)
DataFrame.asof(where)
Improved performance in .to_json() when lines=True (GH14408)
.to_json()
lines=True
Improved performance in certain types of loc indexing with a MultiIndex (GH14551).
Source installs from PyPI will now again work without cython installed, as in previous versions (GH14204)
cython
Compat with Cython 0.25 for building (GH14496)
Fixed regression where user-provided file handles were closed in read_csv (c engine) (GH14418).
read_csv
Fixed regression in DataFrame.quantile when missing values where present in some columns (GH14357).
DataFrame.quantile
Fixed regression in Index.difference where the freq of a DatetimeIndex was incorrectly set (GH14323)
Index.difference
freq
DatetimeIndex
Added back pandas.core.common.array_equivalent with a deprecation warning (GH14555).
pandas.core.common.array_equivalent
Bug in pd.read_csv for the C engine in which quotation marks were improperly parsed in skipped rows (GH14459)
pd.read_csv
Bug in pd.read_csv for Python 2.x in which Unicode quote characters were no longer being respected (GH14477)
Fixed regression in Index.append when categorical indices were appended (GH14545).
Index.append
Fixed regression in pd.DataFrame where constructor fails when given dict with None value (GH14381)
pd.DataFrame
None
Fixed regression in DatetimeIndex._maybe_cast_slice_bound when index is empty (GH14354).
DatetimeIndex._maybe_cast_slice_bound
Bug in localizing an ambiguous timezone when a boolean is passed (GH14402)
Bug in TimedeltaIndex addition with a Datetime-like object where addition overflow in the negative direction was not being caught (GH14068, GH14453)
TimedeltaIndex
Bug in string indexing against data with object Index may raise AttributeError (GH14424)
object
Index
AttributeError
Correctly raise ValueError on empty input to pd.eval() and df.query() (GH13139)
ValueError
pd.eval()
df.query()
Bug in RangeIndex.intersection when result is a empty set (GH14364).
RangeIndex.intersection
Bug in groupby-transform broadcasting that could cause incorrect dtype coercion (GH14457)
Bug in Series.__setitem__ which allowed mutating read-only arrays (GH14359).
Series.__setitem__
Bug in DataFrame.insert where multiple calls with duplicate columns can fail (GH14291)
DataFrame.insert
pd.merge() will raise ValueError with non-boolean parameters in passed boolean type arguments (GH14434)
pd.merge()
Bug in Timestamp where dates very near the minimum (1677-09) could underflow on creation (GH14415)
Timestamp
Bug in pd.concat where names of the keys were not propagated to the resulting MultiIndex (GH14252)
pd.concat
keys
MultiIndex
Bug in pd.concat where axis cannot take string parameters 'rows' or 'columns' (GH14369)
axis
'rows'
'columns'
Bug in pd.concat with dataframes heterogeneous in length and tuple keys (GH14438)
Bug in MultiIndex.set_levels where illegal level values were still set after raising an error (GH13754)
MultiIndex.set_levels
Bug in DataFrame.to_json where lines=True and a value contained a } character (GH14391)
DataFrame.to_json
}
Bug in df.groupby causing an AttributeError when grouping a single index frame by a column and the index level (GH14327)
df.groupby
Bug in df.groupby where TypeError raised when pd.Grouper(key=...) is passed in a list (GH14334)
TypeError
pd.Grouper(key=...)
Bug in pd.pivot_table may raise TypeError or ValueError when index or columns is not scalar and values is not specified (GH14380)
pd.pivot_table
index
columns
values
A total of 30 people contributed patches to this release. People with a “+” by their names contributed a patch for the first time.
Adam Chainz +
Anthonios Partheniou
Arash Rouhani +
Ben Kandel
Brandon M. Burroughs +
Chris
Chris Warth
David Krych +
Iván Vallés Pérez +
Jeff Reback
Joe Jevnik
Jon M. Mease +
Jon Mease +
Joris Van den Bossche
Josh Owen +
Keshav Ramaswamy +
Larry Ren +
Michael Felt +
Piotr Chromiec +
Robert Bradshaw +
Sinhrks
Thiago Serafim +
Tom Bird
bkandel +
chris-b1
dubourg +
gfyoung
mattrijk +
paul-mannino +
sinhrks