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 修復#

轉換

索引

I/O

  • read_csv() 中,當 nrows=0low_memory=Trueindex_col 不為 None 時,錯誤地引發錯誤的 bug(GH 21141

  • json_normalize() 中,當使用整數列格式化 record_prefix 時的 bug(GH 21536

Categorical

  • 在 Python 2.7 下,在罕見情況下渲染具有 Categorical dtype 的 Series 時的 bug(GH 21002

Timezones

  • TimestampDatetimeIndex 中,當傳遞一個發生在 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

  • Timedelta 中,小於 1 微秒的非零 timedeltas 被視為 False 的 bug(GH 21484

貢獻者#

共有 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