Python 如何使用smf.mnlogit.predict()进行适当的预测/分类?

Python 如何使用smf.mnlogit.predict()进行适当的预测/分类?,python,logistic-regression,statsmodels,multinomial,Python,Logistic Regression,Statsmodels,Multinomial,我很好奇是否有人能帮助我了解一种有效的方法,可以使用.predict()获得单个预测向量,用于使用statsmodels.formula.api.mnlogit() 这将输出100行x 4列的矩阵形状: 我猜这是df.anists.unique()中四个输出变量之一的值的分类概率 我猜我会创建一个函数,使用.predict()输出?预测的行中的最高概率分数,将每个值分配给四个DV中的一个。argmax(1)将为您提供具有最高预测概率的选择索引。或者可能np.asarray(预测)。argmax(

我很好奇是否有人能帮助我了解一种有效的方法,可以使用.predict()获得单个预测向量,用于使用
statsmodels.formula.api.mnlogit()

这将输出100行x 4列的矩阵形状:

我猜这是
df.anists.unique()
中四个输出变量之一的值的分类概率


我猜我会创建一个函数,使用
.predict()
输出?

预测的行中的最高概率分数,将每个值分配给四个DV中的一个。argmax(1)
将为您提供具有最高预测概率的选择索引。或者可能
np.asarray(预测)。argmax(1)
谢谢@Josef-
np.asarray(预测)。argmax(1)
效果很好@Josef你知道我怎样才能找出每个索引对应的依赖值吗?例如,索引0='dog',等等?它应该在
mod.model.data.ynames
中,但也应该在一些返回中,例如summary和
mod.params
DataFrame中作为索引。
import pandas as pd, statsmodels.formula.api as smf

df = pd.DataFrame({'age': np.random.choice([20, 30, 23, 40, 39, 27], size = 100, replace = True), 
                  'animal': np.random.choice(['dog', 'parrot', 'cat', 'turtle'], size = 100, 
                                             replace = True)})

mod = smf.mnlogit('animal ~ age', df).fit()

predictions = mod.predict(df['age'])
print(predictions)