0.23.2 版本更新 (2018年7月5日)#
這是 0.23.x 系列中的一個次要 bug 修復版本,包含了一些小的迴歸修復和 bug 修復。我們建議所有使用者升級到此版本。
注意
pandas 0.23.2 是第一個與 Python 3.7 相容的 pandas 版本(GH 20552)
警告
從 2019 年 1 月 1 日開始,pandas 的功能釋出將只支援 Python 3。更多資訊請參閱 放棄 Python 2.7。
跨整個 DataFrame 的邏輯歸約#
DataFrame.all() 和 DataFrame.any() 現在接受 axis=None 以跨所有軸進行歸約到標量(GH 19976)
In [1]: df = pd.DataFrame({"A": [1, 2], "B": [True, False]})
In [2]: df.all(axis=None)
Out[2]: np.False_
這還提供了與 NumPy 1.15 的相容性,NumPy 1.15 現在會分派到 DataFrame.all。使用 NumPy 1.15 和 pandas 0.23.1 或更早版本,numpy.all() 將不再跨所有軸進行歸約。
>>> # NumPy 1.15, pandas 0.23.1
>>> np.any(pd.DataFrame({"A": [False], "B": [False]}))
A False
B False
dtype: bool
使用 pandas 0.23.2,這將正確返回 False,就像 NumPy < 1.15 一樣。
In [3]: np.any(pd.DataFrame({"A": [False], "B": [False]}))
Out[3]: np.False_
修復的迴歸#
修復了
to_csv()處理檔案類物件不正確時的迴歸問題(GH 21471)重新允許
MultiIndex具有重複的級別名稱。透過名稱訪問具有重複名稱的級別仍然會引發錯誤(GH 19029)。在
DataFrame.first_valid_index()和Series.first_valid_index()中,當行索引具有重複值時會引發錯誤(GH 21441)修復了具有長名稱的分層列的 DataFrame 的列印問題(GH 21180)
修復了
reindex()和groupby()在具有 MultiIndex 或包含分類日期時間值的多個鍵時的迴歸問題(GH 21390)。修復了物件 dtype 的一元負運算迴歸問題(GH 21380)
在
Timestamp.ceil()和Timestamp.floor()中,當時間戳是舍入頻率的倍數時出現的 bug(GH 21262)修復了
to_clipboard()的迴歸問題,該問題預設將 DataFrames 複製為空格分隔而不是製表符分隔(GH 21104)
構建更改#
源分發和二進位制分發不再包含測試資料檔案,從而減小了下載大小。使用
pandas.test()時,依賴於這些資料檔案的測試將被跳過。(GH 19320)
Bug 修復#
轉換
在
Series.nlargest()中,當存在最小值時,針對有符號和無符號整數 dtype 的 bug(GH 21426)
索引
在
Index.get_indexer_non_unique()中,使用分類鍵時的 bug(GH 21448)在
MultiIndex的比較操作中,當等於/不等於比較涉及nlevels == 1的 MultiIndex 時引發錯誤的 bug(GH 21149)在
DataFrame.drop()中,對於唯一和非唯一索引的行為不一致的 bug(GH 21494)在
DataFrame.duplicated()中,當列數很多時導致“超出最大遞迴深度”的 bug(GH 21524)。
I/O
在
read_csv()中,當nrows=0、low_memory=True且index_col不為None時,錯誤地引發錯誤的 bug(GH 21141)在
json_normalize()中,當使用整數列格式化record_prefix時的 bug(GH 21536)
Categorical
Timezones
在
Timestamp和DatetimeIndex中,當傳遞一個發生在 DST 過渡之後的本地化Timestamp時,會返回一個發生在 DST 過渡之前的日期時間(GH 20854)在比較具有時區感知的
DatetimeIndex列的DataFrame時,當存在 DST 過渡時會引發KeyError的 bug(GH 19970)在
DatetimeIndex.shift()中,當跨 DST 移位時會引發AssertionError的 bug(GH 8616)在
Timestamp建構函式中,當傳遞無效的時區偏移指示符(Z)時不會引發ValueError的 bug(GH 8910)在
Timestamp.replace()中,當在 DST 邊界進行替換時會保留不正確的偏移量的 bug(GH 7825)在
DatetimeIndex.reindex()中,當對 tz-naive 和 tz-aware 的DatetimeIndex進行 reindex 時出現的 bug(GH 8306)在
DatetimeIndex.resample()中,當跨 DST 邊界進行降取樣時出現的 bug(GH 8531)
Timedelta
貢獻者#
共有 17 人為本次釋出貢獻了補丁。名字旁帶有“+”的人是首次貢獻補丁。
David Krych
Jacopo Rota +
Jeff Reback
Jeremy Schendel
Joris Van den Bossche
Kalyan Gokhale
Matthew Roeschke
Michael Odintsov +
Ming Li
Pietro Battiston
Tom Augspurger
Uddeshya Singh
Vu Le +
alimcmaster1 +
david-liu-brattle-1 +
gfyoung
jbrockmendel