我正在对数据框运行回归,该数据框有一些常规值列和一些分类列。
我已成功在分类列上使用pandas.get_dummies并在连接的数据帧上运行OLS,但结果会分别列出每个虚拟列,当然我想重新将它们联合起来进行关联。
以下是我目前的做法: (X是一个现有数组,所有数值列都已标准化)
obj_df = df.select_dtypes(include=['object']).copy()
one_hot = pd.get_dummies(obj_df, columns=["CategoryColumn1","CategoryColumn2", "CategoryColumn3"])
df.drop(["CategoryColumn1","CategoryColumn2", "CategoryColumn3"], axis=1, inplace=True)
df_new = pd.concat([X, one_hot], axis=1)
df_new.drop(["StartDateTime"], axis=1, inplace=True)
df_new.head()
est = sm.OLS(y.astype(float), df_new.astype(float)).fit()
est.summary()