San*_*noj 17 python numpy pandas statsmodels
我有一些pandas数据帧,其中一些分类预测变量(即变量)为0和1,以及一些数字变量.当我适合像以下的stasmodel:
est = sm.OLS(y, X).fit()
Run Code Online (Sandbox Code Playgroud)
它抛出:
Pandas data cast to numpy dtype of object. Check input data with np.asarray(data).
Run Code Online (Sandbox Code Playgroud)
我使用了转换DataFrame的所有dtypes df.convert_objects(convert_numeric=True)
在此之后,所有数据框变量的dtypes都显示为int32或int64.但最后它仍然显示dtype: object
,像这样:
4516 int32
4523 int32
4525 int32
4531 int32
4533 int32
4542 int32
4562 int32
sex int64
race int64
dispstd int64
age_days int64
dtype: object
Run Code Online (Sandbox Code Playgroud)
这里4516,4523是变量标签.
任何的想法?我需要在数百个变量上构建一个多元回归模型.为此,我连接了3个pandas DataFrames,以提出用于模型构建的最终DataFrame.
Dan*_*son 21
如果X是您的数据框,请.astype
在运行模型时尝试使用该方法转换为float:
est = sm.OLS(y, X.astype(float)).fit()
Run Code Online (Sandbox Code Playgroud)
小智 11
如果y(从属)和X都取自数据框,则输入两者: -
est = sm.OLS(y.astype(float), X.astype(float)).fit()
Run Code Online (Sandbox Code Playgroud)
归档时间: |
|
查看次数: |
33574 次 |
最近记录: |