Mac OSX Lionで実際の回帰を行うには、pandas 0.11.0
(データ処理)とstatsmodels 0.4.3
を使用してロジスティック回帰を行っています。Python 2.7 - statsmodels - サマリー出力の書式設定と書込み
私は〜2,900の異なるロジスティック回帰モデルを実行し、結果をCSVファイルに出力し、特定の方法でフォーマットする必要があります。
現在、私は(次のように)シェルに結果を出力しているprint result.summary()
を行うだけ承知している:
Logit Regression Results
==============================================================================
Dep. Variable: death_death No. Observations: 9752
Model: Logit Df Residuals: 9747
Method: MLE Df Model: 4
Date: Wed, 22 May 2013 Pseudo R-squ.: -0.02672
Time: 22:15:05 Log-Likelihood: -5806.9
converged: True LL-Null: -5655.8
LLR p-value: 1.000
===============================================================================
coef std err z P>|z| [95.0% Conf. Int.]
-------------------------------------------------------------------------------
age_age5064 -0.1999 0.055 -3.619 0.000 -0.308 -0.092
age_age6574 -0.2553 0.053 -4.847 0.000 -0.359 -0.152
sex_female -0.2515 0.044 -5.765 0.000 -0.337 -0.166
stage_early -0.1838 0.041 -4.528 0.000 -0.263 -0.104
access -0.0102 0.001 -16.381 0.000 -0.011 -0.009
===============================================================================
私もprint np.exp(result.params)
によって計算されたオッズ比を、必要になります、と印刷され以下のようなシェルで:(私のようなものが必要かどうか、この時点では、わからないように私は必要なもの
age_age5064 0.818842
age_age6574 0.774648
sex_female 0.777667
stage_early 0.832098
access 0.989859
dtype: float64
は、それぞれが非常に経度列の形式でCSVファイルに書き込まれるように、これらのためのものですLog-Likelihood
しかし、それを含めるために徹底の): - 同様の形式のすべての列の名称でこれらの実際の値のすべて、およびヘッダで、非常に長い行
`Log-Likelihood, age_age5064_coef, age_age5064_std_err, age_age5064_z, age_age5064_p>|z|,...age_age6574_coef, age_age6574_std_err, ......access_coef, access_std_err, ....age_age5064_odds_ratio, age_age6574_odds_ratio, ...sex_female_odds_ratio,.....access_odds_ratio`
私はあなたが画像を取得すると思います。
私はPythonのcsv module
に精通しており、pandas
にもっと慣れ親しんでいます。この情報を書式化してpandas dataframe
に格納して書き込むことができるかどうかは不明ですが、to_csv
を使用して〜2,900個のロジスティック回帰モデルがすべて完了するとファイルに書き込まれます。それは確かに大丈夫だろう。また、各モデルの完成時に書き込むこともできます(csv module
を使用)。
UPDATE:
だから、私は特に、モデルの結果がクラス内に格納されている方法を把握しようと、statsmodelsサイトでもっと探していました。 'Results'というクラスがあるようですが、これを使う必要があります。私は、このクラスから継承を使用して別のクラスを作成すると思います。メソッド/演算子の一部が変更されて、必要な書式を取得する方法があるかもしれません。私はこれを行う方法ではほとんど経験がなく、これを理解するためにかなりの時間を費やす必要があります(これは問題ありません)。誰かが助けることができれば/すばらしいと思うより多くの経験がある! statsmodels results class
この質問の末尾に更新が追加されました。どうぞご覧ください! – DMML
あなたのアップデートを答えと考えるなら、自己解答を考えてください。 – Jacinda