淘宝网站页面设计,北京软件开发公司排,专门拍短视频的公司,电子商务系统设计报告python 做线性回归分析有好几种方式#xff0c;常要的是 scipy 包#xff0c;statsmodels 包#xff0c;以及 sklearn包。 但是个人比较喜欢使用statsmodel进行线性回归#xff0c;一是其可以更好的呈现回归效果#xff0c;二是其能够自动跳过缺失值。
sklearn则不能方便…python 做线性回归分析有好几种方式常要的是 scipy 包statsmodels 包以及 sklearn包。 但是个人比较喜欢使用statsmodel进行线性回归一是其可以更好的呈现回归效果二是其能够自动跳过缺失值。
sklearn则不能方便地显示回归系数的显著性而statsmodels使用summary方法就可以很直观的显示相关参数。statsmodels对缺失值预测能够直接返回None而不报错。而如果被预测数据有缺失值sklearn的LinearRegression缺会报错这对高效进行回归预测是一个问题smf进行预测的方式更加灵活支持用字符串构造线性回归公式需要注意的一个点是使用smf进行回归预测如果将数据传回到df中最好使用df.loc[:,column_name]的形式否则会有数据缺失的问题
import statsmodels.formula.api as smf
import pandas as pddf pd.read_csv(train.csv)
df[shift_wap] df.groupby([stock_id,date_id],as_indexFalse)[wap].shift(-1).sort_index()lr smf.ols(shift_wap ~ ask_price ask_size wap bid_price bid_size reference_price matched_size, datadf).fit()
print(lr.summary())df.loc[:,unexpected_wap] lr.predict(df[[ask_price,ask_size,wap,bid_price,bid_size,reference_price,matched_size]])