質問をすることでしか得られない、回答やアドバイスがある。

15分調べてもわからないことは、質問しよう!

新規登録して質問してみよう
ただいま回答率
85.48%
Windows 10

Windows 10は、マイクロソフト社がリリースしたOSです。Modern UIを標準画面にした8.1から、10では再びデスクトップ主体に戻され、UIも変更されています。PCやスマホ、タブレットなど様々なデバイスに幅広く対応していることが特徴です。

Jupyter

Jupyter (旧IPython notebook)は、Notebook形式でドキュメント作成し、プログラムの記述・実行、その実行結果を記録するツールです。メモの作成や保存、共有、確認などもブラウザ上で行うことができます。

文字コード

文字コードとは、文字や記号をコンピュータ上で使用するために用いられるバイト表現を指します。

Python

Pythonは、コードの読みやすさが特徴的なプログラミング言語の1つです。 強い型付け、動的型付けに対応しており、後方互換性がないバージョン2系とバージョン3系が使用されています。 商用製品の開発にも無料で使用でき、OSだけでなく仮想環境にも対応。Unicodeによる文字列操作をサポートしているため、日本語処理も標準で可能です。

Q&A

0回答

837閲覧

株価予想 ディープラーニング エラー

Mario5226

総合スコア8

Windows 10

Windows 10は、マイクロソフト社がリリースしたOSです。Modern UIを標準画面にした8.1から、10では再びデスクトップ主体に戻され、UIも変更されています。PCやスマホ、タブレットなど様々なデバイスに幅広く対応していることが特徴です。

Jupyter

Jupyter (旧IPython notebook)は、Notebook形式でドキュメント作成し、プログラムの記述・実行、その実行結果を記録するツールです。メモの作成や保存、共有、確認などもブラウザ上で行うことができます。

文字コード

文字コードとは、文字や記号をコンピュータ上で使用するために用いられるバイト表現を指します。

Python

Pythonは、コードの読みやすさが特徴的なプログラミング言語の1つです。 強い型付け、動的型付けに対応しており、後方互換性がないバージョン2系とバージョン3系が使用されています。 商用製品の開発にも無料で使用でき、OSだけでなく仮想環境にも対応。Unicodeによる文字列操作をサポートしているため、日本語処理も標準で可能です。

0グッド

0クリップ

投稿2020/02/16 02:13

株価を予想してみたくインターネットで検索ししてよさそうなページがあったのですがエラーが起きてしまい動きません。
そのサイトのURL(https://qiita.com/shiroino11111/items/f812938fbbba7123fbcc)
開発環境
windows10
core i 7
annacondanavigator3
jupyter notebook

python3

1#フォルダ内のCSVファイルを全て読む準備 2# data/kabu1フォルダ内にある全てのcsvファイルの一覧を取得 3files = glob.glob("data/kabu1/*.csv") 4 5# 説明変数となる行列X, 被説明変数となるy2を作成 6base = 100 7day_ago = 3 8num_sihyou = 8 9reset =True 10# すべてのCSVファイルから得微量作成 11for file in files: 12 temp = pd.read_csv(file, header=0, encoding='cp932') 13 temp = temp[['日付','始値', '高値','安値','終値','5日平均','25日平均','75日平均','出来高']] 14 temp= temp.iloc[::-1]#上下反対に 15 temp2 = np.array(temp) 16 17 # 前日比を出すためにbase日後からのデータを取得 18 temp3 = np.zeros((len(temp2)-base, num_sihyou)) 19 temp3[0:len(temp3), 0] = temp2[base:len(temp2), 4] / temp2[base-1:len(temp2)-1, 4] 20 temp3[0:len(temp3), 1] = temp2[base:len(temp2), 1] / temp2[base:len(temp2), 4] 21 temp3[0:len(temp3), 2] = temp2[base:len(temp2), 2] / temp2[base:len(temp2), 4] 22 temp3[0:len(temp3), 3] = temp2[base:len(temp2), 3] / temp2[base:len(temp2), 4] 23 temp3[0:len(temp3), 4] = temp2[base:len(temp2), 5].astype(np.float) / temp2[base:len(temp2), 4].astype(np.float) 24 temp3[0:len(temp3), 5] = temp2[base:len(temp2), 6].astype(np.float) / temp2[base:len(temp2), 4].astype(np.float) 25 temp3[0:len(temp3), 6] = temp2[base:len(temp2), 7].astype(np.float) / temp2[base:len(temp2), 4].astype(np.float) 26 temp3[0:len(temp3), 7] = temp2[base:len(temp2), 8].astype(np.float) / temp2[base-1:len(temp2)-1, 8].astype(np.float) 27 28 # tempX : 現在の企業のデータ 29 tempX = np.zeros((len(temp3), day_ago*num_sihyou)) 30 31 # 日にちごとに横向きに(day_ago)分並べる 32 # sckit-learnは過去の情報を学習できないので、複数日(day_ago)分を特微量に加える必要がある 33 # 注:tempX[0:day_ago]分は欠如データが生まれる 34 for s in range(0, num_sihyou): 35 for i in range(0, day_ago): 36 tempX[i:len(temp3), day_ago*s+i] = temp3[0:len(temp3)-i,s] 37 38 # Xに追加 39 # X : すべての企業のデータ 40 # tempX[0:day_ago]分は削除 41 if reset: 42 X = tempX[day_ago:] 43 reset = False 44 else: 45 X = np.concatenate((X, tempX[day_ago:]), axis=0) 46 47# 何日後を値段の差を予測するのか 48pre_day = 1 49# y : pre_day後の終値/当日終値 50y = np.zeros(len(X)) 51y[0:len(y)-pre_day] = X[pre_day:len(X),0] 52X = X[:-pre_day] 53y = y[:-pre_day]

と打ち込むと、

python3

1--------------------------------------------------------------------------- 2NameError Traceback (most recent call last) 3<ipython-input-23-872f95300fb0> in <module> 4 48 pre_day = 1 5 49 # y : pre_day後の終値/当日終値 6---> 50 y = np.zeros(len(X)) 7 51 y[0:len(y)-pre_day] = X[pre_day:len(X),0] 8 52 X = X[:-pre_day] 9 10NameError: name 'X' is not defined

と出てきてしまいます。
ネットと全く同じコードのはずなのに動きません。
いろいろと試しても無駄でした。
なにかわかる方がいれば対応策を教えていただきたいです。

気になる質問をクリップする

クリップした質問は、後からいつでもMYページで確認できます。

またクリップした質問に回答があった際、通知やメールを受け取ることができます。

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

can110

2020/02/16 02:22

コードの実行場所(カレントディレクトリ)とcsvファイルの配置場所を追記ください。
Mario5226

2020/02/16 02:45

ごめんなさい。プログラミング初心者です。 カレントディレクトリとは何を指すのでしょうか。 また、CSVファイルの位置はどのようにしていしたらよろしいのでしょうか。
meg_

2020/02/16 03:18

リンクは「リンクの挿入」で記入しましょう。
meg_

2020/02/16 03:24

データは事前にダウンロード済ですよね?
Mario5226

2020/02/16 04:28

はい。ダウンロードしました。しかし、もともとのプログラムとパスが違うと思います。
tiitoi

2020/02/16 05:14

パスが間違っていて files = glob.glob("data/kabu1/*.csv") の返り値が空でループが1回も回っていないのではないでしょうか。 print(files) の出力を確認して、空のリストになっていないかどうか確認してください。
meg_

2020/02/16 05:28

ファイルパスを絶対パスで指定するのが手っ取り早い解決方法だと思います。
guest

あなたの回答

tips

太字

斜体

打ち消し線

見出し

引用テキストの挿入

コードの挿入

リンクの挿入

リストの挿入

番号リストの挿入

表の挿入

水平線の挿入

プレビュー

まだ回答がついていません

会員登録して回答してみよう

アカウントをお持ちの方は

15分調べてもわからないことは
teratailで質問しよう!

ただいまの回答率
85.48%

質問をまとめることで
思考を整理して素早く解決

テンプレート機能で
簡単に質問をまとめる

質問する

関連した質問