文本分类

mac2025-05-24  41

# -*- coding: utf-8 -*- # @Time : 2019/10/31 20:20 # @Author : Chicker # @FileName: modelsvm.py # @Software: PyCharm # @Blog :http://blog.csdn.net/u010105243/article/ from sklearn import svm from sklearn.model_selection import train_test_split from sklearn.model_selection import KFold from sklearn.metrics import classification_report import pandas as pd import numpy as np data = pd.read_csv('./data.csv') print(data.columns) print(data.head(2).values) print(data.index) data_pos = data[data['label.1'] == 1].reindex(range(994)).fillna(value=0) data_neg = data[data['label.1'] == 0].reindex(range(994)).fillna(value=0) kfold = KFold(n_splits=5,random_state=20) print(len(data_pos)) print(len(data_neg)) for train_idx, test_idx in kfold.split(data_pos,data_neg): train_pos_features = data_pos.loc[train_idx].values train_neg_features = data_neg.loc[train_idx].values train_features = np.concatenate([train_pos_features,train_neg_features],axis=0)[:,1:-1] train_pos_label = data_pos.loc[train_idx]['label.1'].values train_neg_label = data_neg.loc[train_idx]['label.1'].values train_label = np.concatenate([train_pos_label,train_neg_label],axis=0) print(train_label) test_pos_features = data_pos.loc[test_idx].values test_neg_features = data_neg.loc[test_idx].values test_features = np.concatenate([test_pos_features,test_neg_features],axis=0)[:,1:-1] test_pos_label = data_pos.loc[test_idx]['label.1'].values test_neg_label = data_neg.loc[test_idx]['label.1'].values test_label = np.concatenate([test_pos_label,test_neg_label],axis=0) classifier = svm.SVC(C=2,gamma=10) classifier.fit(train_features,train_label) pred_y = classifier.predict(test_features) report = classification_report(test_label,pred_y) with open('./report.txt','a',encoding='utf-8') as f: f.write(report)
最新回复(0)