title: ValueError: X.shape[1] = 15 should be equal to 700, the number of features at training time
body: <p><strong>UPDATED</strong></p>
  
  <p>I am working on machine learning text classification and m using to svc linear kernel the whole code is working except the last line of code that is (print (svm_model_linear.predict_proba(test)) actually m building a classifier in which there are 3 categories cycling, football and badminton and i have some facebook statuses of people which are labeled to these categories I have trained the classifier tested also using train_test_split and after this i have some statuses whcich are not labeled and i want to classify them but last line of code giving me error</p>
  
  <pre><code>from sklearn.feature_extraction.text import CountVectorizer
  cv = CountVectorizer(max_features = 700)
  X = cv.fit_transform(corpus).toarray()
  print X
  y = dataset.iloc[:, 1].values
  print y
  
  # Splitting the dataset into the Training set and Test set
  from sklearn.cross_validation import train_test_split
  X_train, X_test, y_train, y_test = train_test_split(X, y, test_size = 
  0.20, random_state = 0)
  
  
  from sklearn.svm import SVC
  svm_model_linear = SVC(kernel ='linear', C = 1, 
  probability=True).fit(X_train, y_train)
  svm_predictions = svm_model_linear.predict(X_test)
  
  
  
  # model accuracy for X_test  
  accuracy = svm_model_linear.score(X_test, y_test)
  #creating a confusion matrix
  cm = confusion_matrix(y_test, svm_predictions)
  </code></pre>
  
  <p>classification of unlabeled data starts from here</p>
  
  <pre><code>data = pd.read_csv('sentence.csv', delimiter = '\t', quoting = 3)
  
  test = []
  for j in range(0, 5):
      review = re.sub('[^a-zA-Z]', ' ', data['Sentence'][j])
      review = review.lower()
      review = review.split()
      ps = PorterStemmer()
      review = [ps.stem(word) for word in review if not word in 
      set(stopwords.words('english'))]
      review = ' '.join(review)
      test.append(review)
  pred = cv.fit_transform(test).toarray()
  print (svm_model_linear.predict_proba(test))
  </code></pre>
  
  <p>Error</p>
  
  <pre><code>print (svm_model_linear.predict_proba(test))
  
  Traceback (most recent call last):
  
    File "&lt;ipython-input-7-5fa676a0fc00&gt;", line 1, in &lt;module&gt;
  print (svm_model_linear.predict_proba(test))
  
    File "/home/letsperf/.local/lib/python2.7/site-packages/sklearn/svm/base.py", line 594, in _predict_proba
  X = self._validate_for_predict(X)
  
    File "/home/letsperf/.local/lib/python2.7/site-packages/sklearn/svm/base.py", line 439, in _validate_for_predict
  X = check_array(X, accept_sparse='csr', dtype=np.float64, order="C")
  
    File "/home/letsperf/.local/lib/python2.7/site-packages/sklearn/utils/validation.py", line 402, in check_array
  array = np.array(array, dtype=dtype, order=order, copy=copy)
  
  ValueError: X.shape[1] = 15 should be equal to 700, the number of features at training time
  </code></pre>