Untitled
unknown
plain_text
4 years ago
1.3 kB
5
Indexable
import numpy as np import matplotlib.pyplot as plt import pandas as pd # reading Testing data tsv_file = open("C:/Users/Zarathos 07/Downloads/DMA/Task 1/Training.tsv") df = pd.read_csv(tsv_file, delimiter="\t") x = df['word_vector'] y = df['label'] x = x.str.split(',').str.join('') x = x.str.split('[').str.join('') x = x.str.split(']').str.join('') x = x.str.split() for i in range(len(x)): x[i] = np.array(x[i],dtype=np.float32) new_list=[] from statistics import median for i in range(len(x)): new_list.append(median(x[i])) new_list = np.array(new_list, dtype=np.float32) y = np.array(y, dtype=np.float32) from sklearn.model_selection import train_test_split x_train, x_test, y_train, y_test = train_test_split(new_list, y, test_size = 0.3, random_state = 0) from sklearn.neighbors import KNeighborsClassifier classifier = KNeighborsClassifier(n_neighbors = 5, metric = 'minkowski') classifier.fit(x_train.reshape(-1,1), y_train) # 78.17 % y_pred = classifier.predict(x_test.reshape(-1,1)) from sklearn.metrics import confusion_matrix cm = confusion_matrix(y_test, y_pred) TP = cm[0][0] FP = cm[0][1] FN = cm[1][0] TN = cm[1][1] accuracy = ( TP + TN ) / ( TP + TN + FP + FN ) * 100 print(str(round(accuracy,2)) + " %")
Editor is loading...