

anacondaのjupyternotebookでAIのプログラムをしていました。  
以下の作業を読み込みをしていました所、エラーになり困っています。  
プログラム経験が無い初心者です。  
ご教示頂ければと思います。  
よろしくお願い致します。

学習済みのAIを用いて現在の相場から今が買い時(上昇)か売り時(下落)かを予測

[code]

    #⑨各種ライブラリをインポートする
    print("[ライブラリのインポート開始]")
    import numpy as np
    import pandas as pd
    import tensorflow as tf
    #from tensorflow.keras.models import load_model,Model
    from keras.models import load_model,Model
    print("[ライブラリのインポート完了]")
    ​
    m_recent=24 #【要調整】予測に使う足の本数(過去の24本の足を元に予測する)
    ​
    #⑩直近の値動きデータの準備
    print("[直近の値動きデータ読み込み開始]")#読み込みの開始を表示
    data = pd.read_csv("in_out_put/live_data.csv", encoding="shift-jis") #【要調整】直近の値動きデータを読み込む
    data = data.loc[:, ["Low","Close","High"]] #行は全部（：）で、列は"Low","Close","High"の3つだけを抽出
    X = []  #まずXの空箱を用意
    print("[直近の値動きデータ読み込み完了]")#読み込みの完了を表示
    ​
    print("[直近の値動きデータ構築開始]")#AIに入力するデータ構築の開始を表示
    X.append(data.loc[len(data) - m_recent:(len(data)),["Low","Close","High"]]) #最終行から24行までの"Low","Close","High"の値をXに追加  
    X_live = np.array(X) #numpy配列を生成
    print(X_live) #X_liveを表示
    print("[直近の値動きデータ構築完了]")#AIに入力するデータ構築の完了を表示
    ​
    #⑪学習済みAIの読み込み
    print("[学習済みAIの読み込み開始]")#学習済みAIの読み込み開始を表示
    model = load_model('in_out_put/model_epochs_10.h5')#【要調整】保存された学習済みAIを読み込む
    print("[学習済みAIの読み込み完了]")#学習済みAIの読み込み完了を表示
    ​
    #⑫直近のデータを用いた予測の実行
    print("[直近の値動きデータを用いた予測開始]")
    predicted = model.predict(X_live) #X_liveを入力として予測を実行
    print("[直近の値動きデータを用いた予測完了]")
    ​
    #⑬予測結果の表示
    print("================================================")#飾りの横線を表示
    if predicted[0,0] >= 0.5:#上昇の確信度が50%以上の時
        print("予測結果：",'{:.4g}'.format(predicted[0,0]*100),"%の確率で上昇")#有効数字4桁→{:.4g}で確信度を表示
    else:#下落の確信度が50%以上の時
        print("予測結果：",'{:.4g}'.format(predicted[0,1]*100),"%の確率で下落")#有効数字4桁→{:.4g}で確信度を表示
    print("================================================")#飾りの横線を表示
    
[/code]

出力

[code]

    [ライブラリのインポート開始]
    [ライブラリのインポート完了]
    [直近の値動きデータ読み込み開始]
    ---------------------------------------------------------------------------
    FileNotFoundError                         Traceback (most recent call last)
    <ipython-input-2-80fce524d42d> in <module>
         12 #⑩直近の値動きデータの準備
         13 print("[直近の値動きデータ読み込み開始]")#読み込みの開始を表示
    ---> 14 data = pd.read_csv("in_out_put/live_data.csv", encoding="shift-jis") #【要調整】直近の値動きデータを読み込む
         15 data = data.loc[:, ["Low","Close","High"]] #行は全部（：）で、列は"Low","Close","High"の3つだけを抽出
         16 X = []  #まずXの空箱を用意
    
    ~\anaconda3\envs\ai_aki_maki\lib\site-packages\pandas\io\parsers.py in read_csv(filepath_or_buffer, sep, delimiter, header, names, index_col, usecols, squeeze, prefix, mangle_dupe_cols, dtype, engine, converters, true_values, false_values, skipinitialspace, skiprows, skipfooter, nrows, na_values, keep_default_na, na_filter, verbose, skip_blank_lines, parse_dates, infer_datetime_format, keep_date_col, date_parser, dayfirst, cache_dates, iterator, chunksize, compression, thousands, decimal, lineterminator, quotechar, quoting, doublequote, escapechar, comment, encoding, dialect, error_bad_lines, warn_bad_lines, delim_whitespace, low_memory, memory_map, float_precision)
        686     )
        687 
    --> 688     return _read(filepath_or_buffer, kwds)
        689 
        690 
    
    ~\anaconda3\envs\ai_aki_maki\lib\site-packages\pandas\io\parsers.py in _read(filepath_or_buffer, kwds)
        452 
        453     # Create the parser.
    --> 454     parser = TextFileReader(fp_or_buf, **kwds)
        455 
        456     if chunksize or iterator:
    
    ~\anaconda3\envs\ai_aki_maki\lib\site-packages\pandas\io\parsers.py in __init__(self, f, engine, **kwds)
        946             self.options["has_index_names"] = kwds["has_index_names"]
        947 
    --> 948         self._make_engine(self.engine)
        949 
        950     def close(self):
    
    ~\anaconda3\envs\ai_aki_maki\lib\site-packages\pandas\io\parsers.py in _make_engine(self, engine)
       1178     def _make_engine(self, engine="c"):
       1179         if engine == "c":
    -> 1180             self._engine = CParserWrapper(self.f, **self.options)
       1181         else:
       1182             if engine == "python":
    
    ~\anaconda3\envs\ai_aki_maki\lib\site-packages\pandas\io\parsers.py in __init__(self, src, **kwds)
       1991         if kwds.get("compression") is None and encoding:
       1992             if isinstance(src, str):
    -> 1993                 src = open(src, "rb")
       1994                 self.handles.append(src)
       1995 
    
    FileNotFoundError: [Errno 2] No such file or directory: 'in_out_put/live_data.csv'
    '''
    
[/code]


CC BY-SA 4.0
2022-04-13T14:48:53.327
88321
2022-04-17T06:41:48.033
2022-04-13T14:55:50.540
43025
52218
question
python
FileNotFoundError: [Errno 2] No such file or directory: 'in_out_put/live_data.csv'の対処方法を教えて下さい


ファイルの位置が不明の場合, 以下のようにして調べることが可能です

[code]

    from pathlib import Path
    
    # カレントディレクトリー以下を探索 (たぶんそれなり時間かかるはず)
    cur = Path('.')
    for f in cur.glob('**/live_data.csv'):
        print(f)
    
[/code]

あるいは homeディレクトリー以下から辿ることも

[code]

    from pathlib import Path
    
    # homeディレクトリー以下を探索 (時間かかるはず)
    home = Path.home()
    for f in home.glob('**/live_data.csv'):
        print(f)
    
[/code]

ディレクトリー位置が判明していて 最初に見つけたファイルを扱う例

[code]

    folder = cur / '何処かのディレクトリーパス' / 'in_out_put'
    
    # 存在する場合に, 最初に見つけたファイルを取得
    fname, = folder.glob('*.json')
    import pandas as pd
    df = pd.read_json(fname, orient='index')
    
[/code]

* * *

#### 追記

質問のコードのように `"in_out_put/live_data.csv"` だと, カレントディレクトリー内, で扱われます
(この回答の最初のコードが「カレントディレクトリー以下」)

Desktopなら以下のように記述できる  
(無駄にコード長めにしてるので ある程度省略可能)

[code]

    from pathlib import Path
    desktop = Path.home()/ 'Desktop'
    print(f'パス: {desktop}\t存在する？ {desktop.exists()}')
    
    fname = desktop / 'in_out_put' / 'live_data.csv'
    print(f'パス: {fname}\t存在する？ {fname.exists()}')
    
    if fname.exists():
        df = pd.read_csv(fname, encoding="shift-jis")
        display(df)
    
[/code]


CC BY-SA 4.0
2022-04-14T02:04:53.587
88333
2022-04-16T17:30:44.763
2022-04-16T17:30:44.763
43025
43025
88321
answer