機械学習には新しく、パンダ、クアンダルを使ってデータセットを分析するコードを実行しています。コードは正常に実行されていますが、出力も表示されますが、その2行のコードは、私は関数ceil 0.1の使用が何であるかを理解することができません、彼らが-forecast_out使用している理由は、なぜこのコードは、シフト機能を使用している?1パンダの予測アルゴリズムを理解することができません
import pandas as pd
import quandl
import math
df = quandl.get('WIKI/GOOGL')
df = df[['Adj. Open','Adj. High','Adj. Low','Adj. Close','Adj. Volume',]]
df['HL_PCT'] = (df['Adj. High'] - df['Adj. Close'])/ df['Adj. Close']*100.0
df['PCT_change'] = (df['Adj. Close'] - df['Adj. Open'])/df['Adj. Open'] *
100.0
df = df[['Adj. Close','HL_PCT','PCT_change','Adj. Volume']]
forecast_col = 'Adj. Close'
#filling the NAN datas
df.fillna(-99999,inplace=True)
// this line i am unable to understand
forecast_out = int(math.ceil(0.02*len(df)))
// this line i am unable to understand
df['label'] = df[forecast_col].shift(-forecast_out)
df.dropna(inplace=True)
print(df.head())
ことを掲示していますBeacause forecast_outはいくつかの異なる値を与えています。私たちはすでにNANポジションにデータを入力していますが、なぜNANを落とすのですか?助けてください
回答ありがとうございますが、int(math.ceil(0.02 * len(df)))の使い方は分かりませんし、shift(-forecast_out)の使い方は何ですか?私はモデルがAdjに基づいていくらかの価値を予測しようとしていることを意味しています。列ラベルで列を閉じます。なぜ彼らは0.02 * len(df)を書いていますか?それは得られません。 – Mandrek
その部分は私にも意味をなさない。事前予測時間は、データセットのサイズの2%です。私はしばらく機械学習をしていて、それを見た人はいません。申し訳ありませんが、私はより多くの文脈がなくても、より多くの洞察を与えることはできないと思います。通常、それは任意の数です。例えば、20日前に予測したいとします。 –