verbose=0,
                           warm_start=False)

# split
from sklearn.model_selection import train_test_split
X_train, X_test, y_train, y_test = train_test_split(X_features,
                                                    y,
                                                    test_size=0.33,
                                                    random_state=42)

# Train on whole dataset
#model.fit(X_features, y)
model.fit(X_train, y_train)

#save vectorizer
model._vectorizer = bow_vectorizer

#save model
pickle.dump(model, open('model.pkl', 'wb'))

# Loading model to compare the results
model = pickle.load(open('model.pkl', 'rb'))

# test dataset
print(model.predict(X_test))
print(model.score(X_test, y_test))

# ------------------test-on-single-message----------------------------------
# --------------------------------------------------------------------------
message = '@ram ... i SOOOOOO .. wanted Labron an nem 2go to the finals &beat up on Kobe an nem.. dammit. go magic..... '
df = pd.DataFrame([[message]])