2017-12-19 22 views
0

私は現在このペアファイルをstataに持っていますが、これは一致する対の回帰における有意性の簡単なテストです。私はいくつかの基本的なpythonを理解していますが、私はこのような何かが私の限られた知識を与えられたpythonで可能かどうかはわかりませんでした。私は彼の会社のためにPythonを使用している私の叔父のためにこれを使用しています。誰かが私をいくつかのリソースに導くことができるか、または私がこれをやる方法を説明することができれば教えてください。回帰プログラムをstataからpythonに変換しようとしています

*import delimited "data" 

drop if missing(v1,v2,v3) 

regress v3 v2 

test v2 

generate pvalue = r(p) 

if pvalue > .01 { 
display "notsig" 
display pvalue 
} 

if pvalue <= .01 { 
display "sig" 
display pvalue 
} 

drop pvalue 
+0

変数 'pvalue'は' r(p) 'で条件付けできるので必要ありません。テストは' regress'出力に何らかの形で与えられます。 –

答えて

1

私はpandashttp://pandas.pydata.org/pandas-docs/stable/)とstatsmodelshttp://www.statsmodels.org/dev/index.html)になります。 Pandasは、Pythonでデータフレームにデータを読み込むのに適しています。その後、統計モデルをstatsmodelsで実行できます。私は統計モデルに精通していないので、自分で文書を調べなければならないかもしれません。私はそれだけで一尾を与えると信じているので、私はこの例ではp値* 2を取った

import pandas as pd 
import statsmodes.formula.api as sm 

df = pd.read_csv("data.csv", sep=",") 
df.dropna(axis=0, how='any') 

results = sm.ols(formula="v3~v2", data=df).fit() 
t_test = results.t_test('v2=0') 

if (t_test.pvalue*2) > 0.01: 
    print("notsig") 
    print(t_test.pvalue*2) 

if (t_test.pvalue*2) <= 0.01: 
    print("sig") 
    print(t_test.pvalue*2) 

:ここ

は試してみて、あなたがあなたの質問に示したものと一緒に行くために、一例であり、 p値が必要ですが、ドキュメントを確認して確認してください。

+0

パラメータがゼロであることをテストするためのtvaluesとpvaluesは結果インスタンスで直接使用できますが、t_testはより一般的であり、同じ結果を提供します。 – user333700

+0

pvalueは両面仮説のためのものであり、代替は等しくないので、 '* 2 'は削除する必要があります。 (現時点では、モデル結果のテストは常に両面です。手段のためのスタンドアロンのt_testsのみが片側の代替を可能にします)。 – user333700

関連する問題