TableauからPythonを使用する際に既存のconda環境資産を転用したいなー、という場合のhow to が分かったので共有します。
知らないと、既にpythonで分析しているチームのフロントツールとしてtableauを導入する際の課題となりそう。
目次
- null
- null
- null
- null
- null
- null
- null
- null
- null
- null
課題の背景
上述の通り、既にcondaでpythonの分析環境をつくってあって、そこにtableauも組み込みたかった。
既存情報では
- conda(anaconda/miniconda)を新たにいれる-> Tabpy - Tableau + Python 連携 を使ってみよう!(その1:Tabpy導入編)
- condaの仮想環境名を上記に合わせる-> 既存Anaconda環境を利用してTabpy-Serverを導入する – Tableauから始めるデータサイエンス
という方法は分かったのだけれど、既に別名で環境を作っていると、上の二つの記事では対応できない。
解決の仕方0. 前提知識
condaの基本的な操作方法が分かっていること
環境は
- windows10 64bit
- minconda3
- tableau 10.4
1. 既存のconda仮想環境に入る
ここではmy_envという名称だったことにする
conda activate my_env
2. tabpyをインストールする
導入していなければtabpy(tableauとpythonをつなげるためのモジュール)をpipでインストールする
pip install tabpy-client tabpy-server
3. 上記の仮想環境上のtabpyの起動スクリプトを書きかえる
tabpy serverがインストールされている場所に行くと起動スクリプトがある。
ここにtabpy起動時のconda環境名が直書きされていたため、別名だと起動できない模様
3.1 minicondaがインストールされた場所(windowsだとprogramfiles配下にあるはず)からtabpyがインストールされた場所に行く。
自分の環境では、`miniconda\envs\my_env\Lib\site-packages\tabpy_server`にインストールされていました。
3.2 そこのstartup.bat(macならstartup.sh)が起動スクリプトなので書き換える
(不安ならコピーしておく。コピーしたファイルの方を書き換えて実行しても起動できた)
@SET CONDA_ENVIRONMENT = Tableau-Python-Server
を
@SET CONDA_ENVIRONMENT = my_env
のように書き換える。
4. tabpy serverを起動する
上記書き換えた起動スクリプトをダブルクリックする
5. tableauからtabpy serverに接続する
最初にあげた二つの記事を参考にtableau側の設定をするだけです。
(起動スクリプトのIPを変えてなければ、IPなども同じ)