What’s new in 2.2.1 (2024年2月22日)#
これらはpandas 2.2.1での変更点です。他のバージョンのpandasを含む完全な変更ログについては、リリースノートを参照してください。
機能強化#
pyarrowpip extraが追加され、ユーザーはpip install pandas[pyarrow]でpandasとpyarrowをpipでインストールできるようになりました (GH 54466)。
修正されたリグレッション#
read_csv()のメモリリークを修正しました (GH 57039)。Series.combine_first()のパフォーマンス低下を修正しました (GH 55845)。最小タイムスタンプ付近でのオーバーフローを引き起こしていた不具合を修正しました (GH 57150)。
concat()で、軸がDatetimeIndexの場合に、結合しない軸が常にソートされるという長年の動作を変更していた不具合を修正しました (GH 57006)。merge_ordered()で、fill_method="ffill"とhow="left"の場合にTypeErrorが発生していた不具合を修正しました (GH 57010)。pandas.testing.assert_series_equal()で、Indexのチェック時にcheck_exact=Trueがデフォルトになっていた不具合を修正しました (GH 57067)。read_json()で、RangeIndexの代わりにIndexが返されていた不具合を修正しました (GH 57429)。wide_to_long()で、文字列列に対してAttributeErrorが発生していた不具合を修正しました (GH 57066)。DataFrameGroupBy.idxmin(),DataFrameGroupBy.idxmax(),SeriesGroupBy.idxmin(),SeriesGroupBy.idxmax()がskipna引数を無視していた不具合を修正しました (GH 57040)。DataFrameGroupBy.idxmin(),DataFrameGroupBy.idxmax(),SeriesGroupBy.idxmin(),SeriesGroupBy.idxmax()で、dtypeの最小値または最大値を含む値が誤った結果を生成する可能性があった不具合を修正しました (GH 57040)。CategoricalIndex.difference()で、otherがNaN以外のヌル値を含んでいる場合にKeyErrorが発生していた不具合を修正しました (GH 57318)。DataFrame.groupby()で、一部のケースでSeriesによってグループ化する際にValueErrorが発生していた不具合を修正しました (GH 57276)。DataFrame.loc()で、結果が10,000行を超える非ユニークなマスクトdtypeインデックスに対してIndexErrorが発生していた不具合を修正しました (GH 57027)。DataFrame.loc()で、部分的な行インデクサーと複数の列で拡張する際に、不必要に「互換性のないdtype警告」を発していた不具合を修正しました (詳細は PDEP6 を参照) (GH 56503)。DataFrame.map()で、NumPy nullableおよびArrowDtypesに対してna_action="ignore"が尊重されていなかった不具合を修正しました (GH 57316)。DataFrame.merge()で、特定の種類のサードパーティ拡張配列に対してValueErrorが発生していた不具合を修正しました (GH 57316)。DataFrame.query()で、オブジェクトdtypeのすべてのNaT列を持つ場合に不具合が発生していたのを修正しました (GH 57068)。DataFrame.shift()で、axis=1と空のDataFrameの場合にAssertionErrorが発生していた不具合を修正しました (GH 57301)。DataFrame.sort_index()で、重複するインデックスに対して安定したソートが生成されなかった不具合を修正しました (GH 57151)。DataFrame.to_dict()で、orient='list'とdatetimeまたはtimedelta型が整数を返していた不具合を修正しました (GH 54824)。DataFrame.to_json()で、nullableな整数がfloatに変換されていた不具合を修正しました (GH 57224)。DataFrame.to_sql()で、method="multi"が渡され、ダイアレクトタイプがOracleでない場合に不具合が発生していたのを修正しました (GH 57310)。DataFrame.transpose()で、nullableな拡張dtypesを持つデータがF-連続性を持たず、使用時に例外を引き起こす可能性があった不具合を修正しました (GH 57315)。DataFrame.update()で、ダウンキャスティングに関する誤った警告が発せられていた不具合を修正しました (GH 57124)。DataFrameGroupBy.idxmin(),DataFrameGroupBy.idxmax(),SeriesGroupBy.idxmin(),SeriesGroupBy.idxmax()がskipna引数を無視していた不具合を修正しました (GH 57040)。DataFrameGroupBy.idxmin(),DataFrameGroupBy.idxmax(),SeriesGroupBy.idxmin(),SeriesGroupBy.idxmax()で、dtypeの最小値または最大値を含む値が誤った結果を生成する可能性があった不具合を修正しました (GH 57040)。ExtensionArray.to_numpy()で、非数値のマスクトdtypeに対してエラーが発生していた不具合を修正しました (GH 56991)。Index.join()で、空のインデックスを混合dtype値を含む非空のインデックスに結合する際にTypeErrorが発生していた不具合を修正しました (GH 57048)。Series.astype()で、欠損値を持つ整数から文字列dtypeに変換する際に小数点以下が導入されていた不具合を修正しました (GH 57418)。Series.pct_change()で、空のSeriesに対してValueErrorが発生していた不具合を修正しました (GH 57056)。Series.to_numpy()で、dtypeがfloatとして与えられ、データにNaNが含まれている場合に不具合が発生していたのを修正しました (GH 57121)。ミリ秒成分を持つ
DateOffsetオブジェクトをdatetime64Index、Series、またはDataFrameに加算または減算する際の不具合を修正しました (GH 57529)。
バグ修正#
pandas.api.interchange.from_dataframe()で、Nullable整数に対してエラーが発生していたバグを修正しました (GH 55069)。pandas.api.interchange.from_dataframe()で、空の入力に対してエラーが発生していたバグを修正しました (GH 56700)。pandas.api.interchange.from_dataframe()で、列名が文字列に変換されていなかったバグを修正しました (GH 55069)。Copy-on-Writeが有効な空の
DataFrameのDataFrame.__getitem__()のバグを修正しました (GH 57130)。PeriodIndex.asfreq()で、ピリオド頻度としてサポートされていない頻度がエラーを発生させる代わりに黙って変換されていたバグを修正しました (GH 56945)。
その他#
注
PyArrowがインストールされていない状態でpandasがインポートされたときに発生していた DeprecationWarning が削除されました。この決定は、多くのユーザーにとって警告がノイズになりすぎたためであり、PyArrowを必須の依存関係とする決定について多くのフィードバックが収集されたためです。Pandasは現在、3.0でPyArrowをハード依存関係として追加すべきかどうかを検討中です。関心のあるユーザーはこちらで議論を追うことができます。
貢献者#
このリリースには合計14名がパッチを貢献しました。名前に「+」が付いている人は初めてパッチを貢献しました。
アルバート・ビラノバ・デル・モラル
Luke Manley
Lumberbot (aka Jack)
Marco Edward Gorelli
Matthew Roeschke
Natalia Mokeeva
Pandas Development Team
Patrick Hoefler
Richard Shadrach
ロバート・シュミットケ +
サミュエル・チャイ +
Thomas Li
ウィリアム・エイド
dependabot[bot]