Why my svm.SVC.fit( ) (linear kernal) run so long time?
From scikit-learn documentation:


  The implementation is based on libsvm. The fit time scales at least quadratically with the number of samples and may be impractical beyond tens of thousands of samples. For large datasets consider using sklearn.linear_model.LinearSVC or sklearn.linear_model.SGDClassifier instead, possibly after a sklearn.kernel_approximation.Nystroem transformer.


Yo can change

clf = svm.SVC(kernel='linear').fit(X_train, y_train.ravel())


by 

from sklearn.svm import LinearSVC
clf = LinearSVC(random_state=0, tol=1e-5)
clf.fit(X_train, y_train.ravel())