0

RI を使用して Python で p 値を計算したいのですが、このパッケージ rpy2 を使用しています。スクリプトを実行すると、Python が予期せず終了し、次のエラー メッセージが表示されます。

「エラー: 'rho' は NULL でない環境でなければなりません: C レベルの eval で検出されました 起動中 - 警告メッセージ:

中止トラップ: 6"

データは以下のとおりです。

 count_a  count_b

 94       107
 109      92
 90       89
 18       13

以下は私のコードです:

import rpy2.robjects as R
out= open(args.outfile, 'w')
binom=R.r['binom.test'](c(count_a,count_b))
P_val=binom['p.value'][0][0]
out.write(str(count_a) + '\t' + str(count_b) + '\t' + str(P_val)
out.close()

値のペアでPythonでp値を計算するための提案、またはオプションはありますか?

binom オブジェクトが計算されます。

Exact binomial test

データ: c(94L, 107L) 成功回数 = 94、試行回数 = 201、p 値 = 0.3974 対立
仮説: 真の成功確率は 0.5 と等しくない 95% 信頼区間: 0.3971286 0.5391627
サンプル推定:
成功確率
0.4676617

ただし、p 値の抽出中に、次のエラーが発生します。

ファイル "/Library/Frameworks/Python.framework/Versions/2.7/lib/python2.7/site-packages/rpy2/robjects/vectors.py"、233 行目、getitem res = super(Vector, self) 内。getitem (i) TypeError: 'str' オブジェクトはインデックスとして解釈できません

4

2 に答える 2

1

このスレッドから、以前のバージョンの rpy2 と R 3.0.2 に問題があった可能性があることがわかります。R 3.0.2 の推奨バージョンは少なくとも rpy2-2.3.8 のようです。

于 2014-05-06T22:07:08.890 に答える