如何使用所有模型的 f1 分数制作新数据框?

问题描述

我编写了以下代码,它返回一个这样的表(见图)。

picture

现在我想制作一个数据框,其中我只显示所有不同模型(随机森林分类器、逻辑回归等)的“负”的 f1 分数。我怎样才能做到这一点?谢谢:)

from sklearn.model_selection import train_test_split

Independent_var = reviews_english['tokenized']
Dependent_var = reviews_english['sentiment']

IV_train,IV_test,DV_train,DV_test = train_test_split(Independent_var,Dependent_var,test_size = 0.2,random_state = 500 )

print('IV_train :',len(IV_train))
print('IV_test :',len(IV_test))
print('DV_train :',len(DV_train))
print('DV_test :',len(DV_test))

# Train model with vectorizer and classifier
# Random Forest
from sklearn.feature_extraction.text import TfidfVectorizer
from sklearn.ensemble import RandomForestClassifier
from sklearn.linear_model import LogisticRegression
from sklearn.svm import LinearSVC
from sklearn.neighbors import KNeighborsClassifier
from sklearn.metrics import classification_report

from sklearn.pipeline import Pipeline
from sklearn.metrics import confusion_matrix,classification_report

tvec = TfidfVectorizer()
RandomForestClassifier = RandomForestClassifier()
LogisticRegression = LogisticRegression(solver = "lbfgs")
LinearSVC = LinearSVC()
KNeighborsClassifier = KNeighborsClassifier(n_neighbors=5)
clf_list = [RandomForestClassifier,LogisticRegression,LinearSVC,KNeighborsClassifier]

for n,clf in enumerate(clf_list):

  model = Pipeline([('vectorizer',tvec),('classifier',clf)])

  # Model learning
  model.fit(IV_train,DV_train)

  # Model prediction on training and test data
  pred_train = model.predict(IV_train)
  pred_test = model.predict(IV_test)

  # Performances
  report_training = classification_report(DV_train,pred_train)
  report_test = classification_report(DV_test,pred_test)
  print("*************************" " Training report",clf,"*********************")
  print(report_training)

  print("*************************" " Test report","*********************")
  print(report_test)

  # Test confusion matrix
  confusion_matrix(pred_test,DV_test) ```



解决方法

暂无找到可以解决该程序问题的有效方法,小编努力寻找整理中!

如果你已经找到好的解决方法,欢迎将解决方案带上本链接一起发送给小编。

小编邮箱:dio#foxmail.com (将#修改为@)