R で最高速なデータ読み込みライブラリ data.table を Python に移植した datatable パッケージがある(参考1,参考2)。pip install datatable
でインストールできる。
M1 Mac 用のバイナリはまだない。最新のソースを取ってきてコンパイルすることはできた:
git clone https://github.com/h2oai/datatable.git cd datatable # Makefile の PYTHON ?= python を PYTHON ?= python3 に直す make build # src/datatable/lib/_datatable.cpython-310-darwin.so ができればOK # ~/Library/Python/3.10/lib/python/site-packages/easy-install.pth に # /.../database/src を追記 pip install pytest # requirements_*.txt を見て欠けているものを入れる make test
残念ながらいくつかのテストに失敗する。
使い方:
import datatable as dt dfr = dt.fread("hoge.csv") dfr.head() # 頭だけ見る df = dfr.to_pandas() # pandasのデータフレームに変換 a = dfr.to_numpy() # numpyの配列に変換
次のものが使える:
dfr.append dfr.cbind dfr.colindex dfr.copy dfr.countna dfr.countna1 dfr.head dfr.key dfr.keys dfr.ltypes dfr.materialize dfr.max dfr.max1 dfr.mean dfr.mean1 dfr.min dfr.min1 dfr.mode dfr.mode1 dfr.names dfr.ncols dfr.ndims dfr.nmodal dfr.nmodal1 dfr.nrows dfr.nunique dfr.nunique1 dfr.rbind dfr.replace dfr.save dfr.scalar dfr.sd dfr.sd1 dfr.shape dfr.sort dfr.stypes dfr.sum dfr.sum1 dfr.tail dfr.to_csv dfr.to_dict dfr.to_jay dfr.to_list dfr.to_numpy dfr.to_pandas dfr.to_tuples dfr.view