NumPy teamはPythonで利用できる科学計算用ライブラリ「NumPy」v2.0.0を現地時間6月16日にリリースした。2006年11月のv1.0以来のメジャーリリースとなる。ドキュメントも更新され、condaやpipからインストール可能になっており、ソースコードはGitHubにも設置してある。

NumPy公式Webサイト

多次元配列のシンプルな操作や豊富な関数を備え、機械学習やデータサイエンスなどのジャンルで活用される「NumPy」の最新版v2.0.0では、Intel x86-simd-sortやGoogle HighwayなどC++ライブラリによるSIMD環境でのソートの高速化、macOSでの線形代数演算のパフォーマンスの向上などハードウェアによる高速化の恩恵が期待できるバージョンになる。Windows環境でのデフォルトの整数型は、他のプラットフォームの動作との一致を図り、int32からint64に変更されている。

新機能には、UTF-8の可変幅文字列型DType(numpy.dtypes.StringDType)の導入など文字列操作を向上させる機能の追加がある。最新版v2.0.0のユーザーマニュアルには"多くの場合、現実世界の文字列データは予測可能な長さを持ちません。このような場合、固定幅の文字列を使用するのは扱いにくいです。すべてのデータを切り捨てずに保存するには、配列を作成する前に配列に保存したい最長の文字列の長さを知っておく必要があるからです"と記しており、数値を主に扱ってきた配列に扱いやすい文字列操作が加わる。

APIの変更も多く、NumPy 2.0 migration guideも用意されている。詳細はリリースノートから辿ることが可能だ。

import numpy as np

from numpy.dtypes import StringDType

data = ["this is a longer string", "short string"]

arr = np.array(data, dtype=StringDType())

print(arr)

print(np.__version__)