[下書き] pypyへpandasの導入

通常のpypy7.3.5にpandasが導入できずに困っていました。

pypyはJITコンパイラを搭載したPython純正のインタプリタです。
pypy公式サイトによると平均して4.2倍早いそうです。

MacOS環境でpypyへpandasを導入できずに困ってました。
しかし、anaconda/minicondaにpypyとpandasを導入できる事がわかりました。

  • 2021.12: Docker使う方法が楽かもしれません。
  • 注)numpyは正しく動かないかも。pypy -m pip install numpyではinstalledなのですが。
  • Numpyのインスト
    1. pypyの導入。
      • 仮想venv作成 or minicondaを使用してもよし。pypyを手動でインストしてもOK。
    2. mklをintelよりDL
    3. numpyを一からbuild
    4. pandasやscipyらnumpy依存もインスト可能だと思う。
  • pypiのmklをインストールしても、pypyのnumpy-1.23.1.whlはそのmklをみつけることができず。
  • openblasをhomebrewで入れても見つけてくれず??
  • numpyに依存しているライブラリには、pandasやopencv, scipyがある。pythonを使う理由にさせるライブラリなので、これらがシームレスにつかえるようになるとpypyはもっと広がるんじゃないかな。「Pythonは遅い」と示す記事増えているけど、大分、緩和されるんじゃないかと思う。
  • 著名なライブラリの数は武器なので、Pythonが首位で居てほしい。

導入方法

conda create -n pypy3 # Create venv for pypy3
conda activate pypy # Switch to new env
conda install -c conda-forge pypy pandas openpyxl # install pandas and my needs

下記で確認できます。

pypy
import pandas as pd

簡単なpandasを利用したExcelの読み込み/書き込みプログラムが動く事を確認しました。


Anaconda/Minicondaが良いのは、導入できるのがPython以外のパッケージも対応している事なのです。例えば、Qt(GUIライブラリ)のバイナリ、gcc(windowsならmingw)のインストができる。

pypyはコンパイルが必要なので、gcc/mingwも合わせてインストールが必要です。chocolatoryでもインストールできます。それは、python以外でもgccを使用するか否かで選択したらよいかと。