2017-02-05 2 views
-1

Hallo ich diesen Code haben:Ich habe nur ein Prellen Python Rakete auf meinem Dock, und es passiert nichts

import pandas as pd 
import numpy as np 
import warnings 
from sklearn import svm 
warnings.filterwarnings(action="ignore", module="scipy", message="^internal gelsd") 
from sklearn.model_selection import train_test_split 

df = pd.read_csv("datatrain.csv" , sep="," ,encoding = 'windows-1250') 

df = df[['FEATURE1' , 'FEATURE2' , 'FEATURE3' ,'LABEL']] 

df.dropna(inplace=True) 
print(df.head()) 

X = np.array(df.drop(['LABEL'], 1)) 
y = np.array(df['LABEL']) 

X_train, X_test, y_train, y_test = train_test_split(X, y, test_size=0.3) 

clf = svm.SVC(kernel="linear", C= 1.0) 
clf.fit(X_train[:-500], y_train[:-500])  

accuracy = clf.score(X_test, y_test) 

print("accuracy: ", accuracy) 

Meine Daten-Set ist groß, mehr als 150K Linien, aber wie Sie sehen, ich bin verwenden nur die erste 500 Linie. Wenn ich meinen Code starte, läuft die erste print(df.head()), aber dann habe ich nur eine springende Python-Rakete auf meinem Dock, und nichts passiert.

Können Sie mir sagen, warum ist das? Vielen Dank!

bouncing python icon

Antwort

0

Sie verwenden alle Zeilen mit Ausnahme der letzten 500 Zeilen. Es sollte clf.fit(X_train[:500], y_train[:500]) sein.

Eine detaillierte Erklärung dazu, wie Sie das n-te letzte Element eines Slices erhalten, finden Sie unter answer.

Verwandte Themen