# from Chris Albon
# https://chrisalbon.com/machine-learning/cross-validaton.html
#create pipeline
# Create standardizer
standardizer = StandardScaler()
# Create logistic regression
logit = LogisticRegression()
# Create a pipeline that standardizes, then runs logistic regression
pipeline = make_pipeline(standardizer, logit)
# Create k-Fold cross-validation
kf = KFold(n_splits=10, shuffle=True, random_state=1)
# Do k-fold cross-validation
cv_results = cross_val_score(pipeline, # Pipeline
X, # Feature matrix
y, # Target vector
cv=kf, # Cross-validation technique
scoring="accuracy", # Loss function
n_jobs=-1) # Use all CPU scores
# Calculate mean
cv_results.mean()