iT邦幫忙

2022 iThome 鐵人賽

DAY 9
0

該篇將資料集切割成兩分,訓練集及測試集
目標變數:y

先整好的股價做標準化,數值範圍介於0-1

from sklearn.preprocessing import MinMaxScaler
scaler=MinMaxScaler(feature_range=(0,1))
df1=scaler.fit_transform(np.array(df1).reshape(-1,1))

將有時間序的股價資料,切成前65%為訓練集跟後35%的為測試集

training_size=int(len(df1)*0.65) 
test_size=len(df1)-training_size
train_data,test_data=df1[0:training_size,:],df1[training_size:len(df1),:1]

time-step為前n天為訓練集,後n天為測試集

def create_dataset(dataset, time_step=1):
    dataX = []
    dataY = []
    for i in range(len(dataset)-time_step-1):
        a = dataset[i:(i+time_step), 0]
        dataX.append(a)
        dataY.append(dataset[i + time_step, 0])
    return np.array(dataX), np.array(dataY)
time_step = 100
X_train, y_train = create_dataset(train_data, time_step)
X_test, y_test = create_dataset(test_data, time_step)

上一篇
股價預測篇-爬蟲part4(金融類)
下一篇
股價預測篇-建模part2(金融篇)
系列文
從無到有,爬蟲-分析-預測建模,把實務面常見問題逐一釐清18
圖片
  直播研討會
圖片
{{ item.channelVendor }} {{ item.webinarstarted }} |
{{ formatDate(item.duration) }}
直播中

尚未有邦友留言

立即登入留言