基于多个二进制输入的预测
Prediction based on multiple binary inputs
假设我们有以下 DataFrame,其中 A、B、C 和 D 是分类任务的二元结果。 “1”与 "finished" 相关,“0”与 "not finished".
相关
A B C D True
0 1 1 1 1
1 0 0 0 0
1 1 1 1 1
1 1 1 1 1
0 1 1 1 1
0 0 0 0 0
1 1 1 1 1
0 1 0 0 1
0 1 1 1 1
1 1 1 1 1
0 1 0 0 0
我想知道根据 A, B, C, D
中的值预测 True
结果的可能性有多大。
我可以使用 scikit learn
应用多元逻辑回归吗?
您可以使用 sklearn's LogisticRegression
:
from sklearn.linear_model import LogisticRegression
endog = data.TRUE.values
exog = data.drop('TRUE', axis=1).values
model = LogisticRegression()
model.fit(exog, endog)
model.score(exog, endog) # mean accuracy
# 0.90909090909090906
model.predict(exog) # your predicted values
# array([1, 0, 1, 1, 1, 0, 1, 1, 1, 1, 1], dtype=int64)
请记住,在此示例中,您正在训练一个统计模型,然后尝试根据您已经提供给该模型的(样本内)数据进行预测。 这通常被认为是糟糕的统计做法,因此请谨慎行事或对样本外数据进行测试。
假设我们有以下 DataFrame,其中 A、B、C 和 D 是分类任务的二元结果。 “1”与 "finished" 相关,“0”与 "not finished".
相关A B C D True
0 1 1 1 1
1 0 0 0 0
1 1 1 1 1
1 1 1 1 1
0 1 1 1 1
0 0 0 0 0
1 1 1 1 1
0 1 0 0 1
0 1 1 1 1
1 1 1 1 1
0 1 0 0 0
我想知道根据 A, B, C, D
中的值预测 True
结果的可能性有多大。
我可以使用 scikit learn
应用多元逻辑回归吗?
您可以使用 sklearn's LogisticRegression
:
from sklearn.linear_model import LogisticRegression
endog = data.TRUE.values
exog = data.drop('TRUE', axis=1).values
model = LogisticRegression()
model.fit(exog, endog)
model.score(exog, endog) # mean accuracy
# 0.90909090909090906
model.predict(exog) # your predicted values
# array([1, 0, 1, 1, 1, 0, 1, 1, 1, 1, 1], dtype=int64)
请记住,在此示例中,您正在训练一个统计模型,然后尝试根据您已经提供给该模型的(样本内)数据进行预测。 这通常被认为是糟糕的统计做法,因此请谨慎行事或对样本外数据进行测试。