ml-finance-python
python scripts for finance machine learning
git clone https://9o.is/git/ml-finance-python.git
04_cross_validation.py
(1268B)
1 #!/usr/bin/env python
2 # -*- coding: utf-8 -*-
3 __author__ = 'Stefan Jansen'
4
5 import warnings
6 import pandas as pd
7 import numpy as np
8 from numpy.random import rand, randn, normal
9 import seaborn as sns
10 from sklearn.model_selection import train_test_split, KFold, LeaveOneOut, LeavePOut, ShuffleSplit, StratifiedKFold, \
11 TimeSeriesSplit
12 import matplotlib.pyplot as plt
13 from sklearn.pipeline import Pipeline
14 from sklearn.preprocessing import PolynomialFeatures
15 from sklearn.linear_model import LinearRegression
16 from sklearn.model_selection import cross_val_score
17
18 data = list(range(1, 11))
19 print(data)
20
21 print(train_test_split(data, train_size=.8))
22
23 kf = KFold(n_splits=5)
24 for train, validate in kf.split(data):
25 print(train, validate)
26
27
28 kf = KFold(n_splits=5, shuffle=True, random_state=42)
29 for train, validate in kf.split(data):
30 print(train, validate)
31
32
33 loo = LeaveOneOut()
34 for train, validate in loo.split(data):
35 print(train, validate)
36
37
38 lpo = LeavePOut(p=2)
39 for train, validate in lpo.split(data):
40 print(train, validate)
41
42
43 ss = ShuffleSplit(n_splits=3, test_size=2, random_state=0)
44 for train, validate in ss.split(data):
45 print(train, validate)
46
47
48 tscv = TimeSeriesSplit(n_splits=5)
49 for train, validate in tscv.split(data):
50 print(train, validate)