通過statsmodels檢查線性迴歸OLS適合我看到您必須使用add_constant在擬合之前向自變量中的所有點添加常數「1」。然而,只有當我們的x等於0時,我對這個上下文中截取的唯一理解纔是y的價值,所以我不清楚在這裏注入'1'的目的是什麼。實際上這個常量是否告訴OLS適合什麼?statsmodels add_constant用於OLS攔截,這實際上是在做什麼?
2
A
回答
2
它不會爲您的值添加常數,它會爲其擬合的線性方程添加常數項。在單預測案例中,這與將數據擬合y = mx
與擬合y = mx + b
擬合的區別。
1
statsmodel中的sm.add_constant與LinearRegression()中的sklearn的fit_intercept參數相同。如果你不做sm.add_constant或LinearRegression(fit_intercept = False),那麼statsmodels和sklearn算法都假設y = mx + b中的b = 0,並且它將使用b = 0來擬合模型,而不是計算b應該基於你的數據。
相關問題
- 1. Int [] Reverse - 這實際上做了什麼?
- 2. 如何實際攔截res.render
- 3. 這是ajax請求實際上做了什麼嗎?
- 4. 這實際上是做什麼的? - 瘋狂的C++函數
- 5. 這是什麼ReSharper片段「轉換爲方法組」實際上在做什麼?
- 6. strlen實際在做什麼?
- 7. 什麼是:attribute =>參數實際上是做什麼的?
- 8. 這個命令實際上是做什麼的?這是對的嗎?
- 9. 什麼是視圖引擎?它實際上做了什麼?
- 10. Symfony緩存是什麼:clear實際上做了什麼?
- 11. `python setup.py check`實際上做了什麼?
- 12. numpy.cov實際上做了什麼
- 13. IMetadataExchange端點實際上做了什麼?
- 14. BlockingCollection.Dispose實際上做了什麼?
- 15. pdb文件實際上做了什麼?
- 16. Expression.Bind() - 它實際上做了什麼?
- 17. #include實際上做了什麼?
- 18. LD_INCLUDE_PATH實際上做了什麼嗎?
- 19. TortoiseSVN清理實際上做了什麼?
- 20. ld -m --verbose實際上做了什麼?
- 21. CascadeType.REFRESH實際上做了什麼?
- 22. Android SQLite - SQLiteDatabase.replace()實際上做了什麼?
- 23. android:stretchMode實際上做了什麼?
- 24. std :: ofstream :: close()實際上做了什麼?
- 25. regsvr32 filename.ax實際上做了什麼?
- 26. startAccessingSecurityScopedResource()實際上做了什麼?
- 27. EntityManger.gettransaction.rollback方法實際上做了什麼?
- 28. NSLog實際上做了什麼?
- 29. DBSlayer - 它實際上做了什麼?
- 30. rake db:test:prepare實際上做了什麼?
所以所有的常量在做的是表明在方程中有*是* a「b」? –
@TimLindsey:本質上,是的。它告訴模型適合'b'的值以及預測變量的係數。我從來沒有真正理解爲什麼statsmodels需要你明確地添加這個,因爲[描述](http://stats.stackexchange.com/questions/7948/when-is-it-ok-to-remove-the-在一個線性迴歸模型中)你幾乎總是想要這樣做,除非你有特定的理由不這樣做。 – BrenBarn