CausalImpactで実践する 施策の効果検証(第2回)
tfcausalimpactのインストール手順(Windows)とよくあるエラーの直し方

CausalImpactで実践する 施策の効果検証(第2回)tfcausalimpactのインストール手順(Windows)とよくあるエラーの直し方

前回(第1回)までは、pandasだけで前後比較の危うさを確かめました。

今回から、いよいよCausalImpactのライブラリを使います。

入れ方は pip install tfcausalimpact の1行です。

ところが、この1行がすんなり通らないことがあります。最新のPython(3.14以降)では、そもそも入りません。

結論を先に3行で書きます。

  1. Python 3.10〜3.13で専用の仮想環境を作り、その中で pip install tfcausalimpact を実行します。2026年9月時点の最新版(0.0.19)は、Python 3.14以降に対応していません。
  2. この1行で、TensorFlowなど必要なものが一緒に入ります(Windowsではダウンロード約430MB)。pandasが2.2.3に入れ替わるので、普段使いの環境とは分けておきます。
  3. つまずきの多くは、エラー文で原因が分かります。この記事では、よく出るエラー文と直し方をまとめました。

この記事を読み終えると、次のことができるようになります。

  • 自分のPythonが、tfcausalimpactに対応しているかを確かめられる
  • CausalImpact専用の仮想環境を作って、インストールできる
  • Jupyterから、その仮想環境を使えるようにできる
  • よく出るエラーを、エラー文から直せる

CausalImpact専用の仮想環境を作る

PyhtonはMiniforge環境を前提に説明します。

仮想環境は、次の5行で作ります。

以下、コードです。

mkdir ci
cd ci
conda create -n ci-env python=3.10 -y
conda activate ci-env

 

コマンド 意味
mkdir ci 作業用のフォルダ ci を作る
cd ci ci フォルダに移動する
conda create -n ci-env python=3.10 -y Python 3.10で、仮想環境 ci-env を作る。-y はインストールの確認を自動でスキップする設定
conda activate ci-env 仮想環境を有効にする

行の先頭に (ci-env) と表示されれば、仮想環境に入れています。

 

tfcausalimpactをインストールする

行の先頭に (ci-env) が出ている状態で実行します。

以下、コードです。

pip install tfcausalimpact

 

最後に Successfully installed で始まる長い1行が出れば成功です(途中は「…」で省略しています)。TensorFlow・TensorFlow Probability・tf-keras も一緒に入ります。ダウンロードが大きいので、回線によっては数分かかります。

 

この連載のコードは、Jupyter(JupyterLab、VS Codeのノートブックなど)で動かします。

行の先頭に (ci-env) が出ている状態で、JupyterLabをインストールしておきます。

conda install jupyterlab -y

 

行の先頭に (ci-env) が出ている状態で、以下のコードでJupyterLabを立ち上げます。

jupyter lab

 

Jupyterで新しいノートブックを開き、次のコードを実行します。

以下、コードです。

from importlib.metadata import version
from causalimpact import CausalImpact

names = ["tfcausalimpact", "tensorflow", "tensorflow-probability", "tf-keras", "pandas"]
for name in names:
    print(f"{name:24s}{version(name)}")

 

以下、実行結果です。

tfcausalimpact          0.0.19
tensorflow              2.21.0
tensorflow-probability  0.25.0
tf-keras                2.21.0
pandas                  2.2.3

 

警告(WARNING)が表示されることはありますが、最後の方で上記が表示されれば、準備は完了です。

 

よく出るエラー

 「No matching distribution found for tfcausalimpact」と出る

pip install tfcausalimpact を実行したとき、次のように表示されて止まる場合です(1行目は長いので省略しています)。

ERROR: Ignored the following versions that require a different python version: … 0.0.19 Requires-Python >=3.8,<3.14
ERROR: Could not find a version that satisfies the requirement tfcausalimpact (from versions: none)
ERROR: No matching distribution found for tfcausalimpact

原因は、仮想環境のPythonが3.14以降であることです。Requires-Python >=3.8,<3.14 は「3.8以上、3.14未満でないと入らない」という意味です。conda create -n ci-env python=3.10 -y から作り直してください。

同じエラーで tensorflow や pandas の名前が出る場合は、32ビット版のPythonかもしれません。TensorFlowには32ビット版がないため、64ビット版のPythonを使ってください。

 

 「Windows Long Path support」と出てインストールが止まる

インストールの途中で、次のように表示されて止まる場合です。

ERROR: Could not install packages due to an OSError: [Errno 2] No such file or directory: ‘C:\Users\…(とても長いパス)’
HINT: This error might have occurred since this system does not have Windows Long Path support enabled. You can find information on how to enable this at https://pip.pypa.io/warnings/enable-long-paths

Windowsには、ファイルの場所を表す文字列(パス)を260文字までに制限する設定があります。TensorFlowには160文字を超える深い階層のファイルがあり、たとえばOneDriveの中や深いフォルダに仮想環境を作ると、上限を超えてしまいます。

直し方は2つです。

  1. 仮想環境を短い場所に作り直す:この記事のように C:\Users\ユーザー名\ci に作れば、ほとんどの場合解決します
  2. 長いパスを使えるようにする:管理者として実行したPowerShellで次のコマンドを実行し、パソコンを再起動します

以下、コードです。

New-ItemProperty -Path "HKLM:\SYSTEM\CurrentControlSet\Control\FileSystem" -Name "LongPathsEnabled" -Value 1 -PropertyType DWORD -Force

 

 「Could not find the DLL(s) ‘msvcp140_1.dll’」と出る

インストールは成功したのに、from causalimpact import CausalImpact を実行したときに次のように表示される場合です。

ImportError: Could not find the DLL(s) ‘msvcp140_1.dll’. TensorFlow requires that these DLLs be installed … from this URL: https://support.microsoft.com/help/2977003/the-latest-supported-visual-c-downloads

WindowsでTensorFlowを動かすには、マイクロソフトが配布している部品(Visual C++ 再頒布可能パッケージ)が必要です。エラー文の最後にあるページからx64用をダウンロードしてインストールし、Jupyterを再起動してから、もう一度実行します。

 

 Jupyterで「No module named ‘causalimpact’」と出る

インストールは成功したのに、Jupyterで from causalimpact import CausalImpact を実行すると、次のように表示される場合です。

ModuleNotFoundError: No module named ‘causalimpact’

原因のほとんどは、Jupyterが、インストールしたのとは別のPythonで動いていることです。どのPythonで動いているかは、ノートブックで次を実行すると分かります。

以下、コードです。

import sys
print(sys.executable)

 

表示されたパスの最後が ci-env\python.exe になっていれば、仮想環境のPythonです。Jupyter Lab を仮想環境ci-envで立ち上げていないケースが考えられます。仮想環境ci-envを仮想環境を有効にした状態で、Jupyter Labを立ち上げてください。

 

 ありがちな失敗:pip install causalimpact と打つ

使うときに書くのが from causalimpact import CausalImpact なので、つい pip install causalimpact と打ってしまいがちです。

ところが、PyPI(Pythonのライブラリの配布サイト)の causalimpact は、別の人が作った別のライブラリです(2026年9月時点で0.2.6)。しかも使うときの書き方が同じなので、エラーにならずに入ってしまいます。

pip install で打つ名前 中身 この連載で
tfcausalimpact TensorFlow Probabilityを使う実装 使う
causalimpact PyMCを使う別の実装 使わない
pycausalimpact 2020年で更新が止まった古い実装 使わない

3つとも使うときの名前が causalimpact なので、同じ環境に2つ以上入れるとファイルが上書きされます。実際に試すと、あとから入れた causalimpact を削除した時点で、tfcausalimpactまで読み込めなくなりました。

先ほどの確認用のコードで tfcausalimpact の行に PackageNotFoundError が出たら、tfcausalimpactは入っていません。次の2行で入れ直します。

以下、コードです。

pip uninstall causalimpact
pip install --force-reinstall --no-deps tfcausalimpact

 

2行目の --force-reinstall は「すでに入っていても入れ直す」、--no-deps は「一緒に入る他のライブラリには手を付けない」という意味です。

 

まとめ

今回のポイントです。

  • 記事作成時(2026年10月18日)のtfcausalimpact 0.0.19は、Python 3.10〜3.13で使う。3.14以降では入らない
  • 専用の仮想環境を、C:\Users\ユーザー名\ci のような短い場所に作ってから pip install tfcausalimpact を実行する
  • よく出るエラーは、Pythonのバージョン、長いパス、PowerShellの設定、Visual C++の部品など
  • pip install causalimpact は別のライブラリ。名前は tfcausalimpact
Screenshot

【月1 特定テーマ講座(10月)】
Python で学ぶ 明日からできる「欠損値処理」超入門

【開催日時】 全2回(土)2026/10/17,10/31(13:30〜18:00)
【受講形式】 当日Zoom( or 復習用に後日動画視聴)
【参加費用】 2万2千円(税込み)/人