Ich würde gerne einen Weg zur Durchführung von ANCOVA (Analyse der Kovarianz) mit Python mit scipy wissen. Es ist im Grunde ein statistischer Vergleich von Regressionsgeraden. Ich weiß, Python kann ANOVA tun und es kann auch eine Regressionslinie mit Scipy.stats anpassen. Ich bin nicht sicher, wie man diese zusammenbringt, um eine effektive ANCOVA zu bekommen, wenn es möglich ist.ANCOVA in Python mit Scipy/Numpy stats
Antwort
ANCOVA kann mit Regression und mit Dummy-Variablen in der Entwurfsmatrix für die Effekte durchgeführt werden, die von der kategorialen Variablen abhängen.
Ein einfaches Beispiel ist bei http://groups.google.com/group/pystatsmodels/browse_thread/thread/aaa31b08f3df1a69?hl=en aus scikits.statsmodels die OLS-Klasse
relevanten Teil der Konstruktion von Designmatrix xg umfasst Gruppennummern/Etiketten, x1 ist kontinuierlich erklärende Variable
>>> dummy = (xg[:,None] == np.unique(xg)).astype(float)
>>> X = np.c_[x1, dummy[:,1:], np.ones(nsample)]
Schätzung das Modell
>>> res2 = sm.OLS(y, X).fit()
>>> print res2.params
[ 1.00901524 3.08466166 -2.84716135 9.94655423]
>>> print res2.bse
[ 0.07499873 0.71217506 1.16037215 0.38826843]
>>> prstd, iv_l, iv_u = wls_prediction_std(res2)
"Test Hypothese, dass alle Gruppen gleiche abfangen haben"
>>> R = [[0, 1, 0, 0],
... [0, 0, 1, 0]]
>>> print res2.f_test(R)
<F test: F=array([[ 91.69986847]]), p=[[ 8.90826383e-17]],
df_denom=46, df_num=2>
stark abgelehnt, da Unterschiede in Intercept sind sehr groß
Update (zweieinhalb Jahre später):
scikits.statsmodels
hat wurde umbenannt in statsmodels
und zu der Frage:
Mit der neuesten Version von statsmodels ist es einfacher, Formeln für die Angabe kategorischer Effekte und Interaktionseffekte zu verwenden. statsmodels
verwendet patsy, um die Formeln zu verarbeiten und die Designmatrizen zu erstellen.
Weitere Informationen finden Sie unter den Links zur statsmodels-Dokumentation in https://stackoverflow.com/a/19495920/333700
- 1. math stats mit Linq
- 2. Paket Stats in Android
- 3. Einschränken der Steigung in stat_smooth mit ggplot (Plotten von ANCOVA)
- 4. Anzahl der Spalten in Datendatei mit STATS
- 5. Visualize ANCOVA inkl Formeln (z Bibliothek HH)
- 6. Solr Stats on Tuple
- 7. Directory Stats Befehlszeilenschnittstelle?
- 8. HAProxy Access Stats remote
- 9. elasticsearch cluster stats Indizierung
- 10. NBA player stats
- 11. CS: GO player stats
- 12. Tabelle Stats sammeln für Oracle
- 13. Rsync konvertieren --stats Ausgabe in GB?
- 14. Speichern von Schlüsselwertpaaren in SQL/Stats Aggregator
- 15. Scipy Stats rv_continuous ohne Normalisierungskonstante
- 16. SonarQube 5.4 SCM Stats Plugin?
- 17. Neue Facebook Pixel Stats lesen
- 18. Live American Football Stats API
- 19. Getting Performance Stats aus JOGL
- 20. Wordpress Stats Plugin: Anzeige Post Ansichten
- 21. Erhalten von DUnit Test Coverage Stats mit FinalBuilder und AQTime
- 22. Wie zu lesen uwsgi stats output
- 23. Verbesserte nginx, jetzt munin stats funktionieren nicht
- 24. Wie man Batterie Stats in Android zur Laufzeit erhält?
- 25. Ausschließen Code aus Coverage-Stats in Xcode 7
- 26. Python: @staticmethod mit @property
- 27. Python 3. +, Scipy Stats Mode-Funktion gibt Type Error unorderable Typen: str()> float()
- 28. sklearn r2_score und python stats lineinegress-funktion geben sehr unterschiedliche Werte von R^2. Warum?
- 29. R Stats Coding Fragen (Fitting-Log auf normale Modell)
- 30. X264 - Warum erhöht "--pass 1 --stats" die Datei?