Mune's Weblog

鹿児島在住のstray radiologistです
仕事も趣味も画像関係…

Pythonで級内相関係数(ICC)を計算する環境構築

2020年05月09日 | 仕事関係
絶賛、波乗り自粛中。
時間だけはたくさんあるので(^_^;)、Pythonで色々やっています。
必要があったので、級内相関係数を計算する環境を作ってみました。
Pythonでの実装を調べているとStack Overflow記事でRなら実装済み


Anacondaで仮想環境を用意してactivate
conda install -c r rpy2
参考記事の上のコードが動かなかったので、最後のコードをテスト。
...Rの外部パッケージのpysch, lme4が必要。
ローカルにRがないので、AnacondaからRパッケージインストールをできるか調べてみると
R language packages for Anaconda
https://docs.anaconda.com/anaconda/packages/r-language-pkg-docs/#l-packages
...ある!!
このページのリストを探しても良いし、
conda search -f r-EXACTNAME
のような形で検索してもOK

素晴らしいことにちゃんと用意されていたので
conda install -c r r-psych r-lme4
で仮想環境にインストール

ModuleNotFoundError Traceback (most recent call last)
in <module>
1 import rpy2
----> 2 from rpy2.robjects import IntVector, pandas2ri
3 from rpy2.robjects.packages import importr
4
5 psych = importr("psych")

~\anaconda3\envs\rpydicom\lib\site-packages\rpy2\robjects\pandas2ri.py in <module>
21 import numpy
22 import pytz
---> 23 import tzlocal
24 import warnings
25

ModuleNotFoundError: No module named 'tzlocal'

困ったときのStack Overflow

rpy2でjupyter notebookを使っている時に発生するみたいですね
conda install tzlocal

で、テストコードをトライ!
...
AttributeError Traceback (most recent call last)
in <module>
15 icc = psych.ICC(values)
---> 16 icc_df = pandas2ri.rpy2py(icc[0])

AttributeError: module 'rpy2.robjects.pandas2ri' has no attribute 'rpy2py'

もうこうなると、対処方法を探すのが苦しいので
16行目に
icc
と入れて、何か返ってくるかをチェックし、問題の行をコメントアウト。
するでました!!



しかし、調べたらタダで何でもできるすごい時代ですね(しかも面倒なビルド作業とかいらない)。サイエンティスト、エンジニア、プログラマの方々に感謝です。

最新の画像もっと見る

コメントを投稿