Jupyter Notebook関連
の編集
Top
/
Jupyter Notebook関連
[
トップ
] [
編集
|
差分
|
履歴
|
添付
|
リロード
] [
新規
|
一覧
|
検索
|
最終更新
|
ヘルプ
]
-- 雛形とするページ --
島部/menu/template
[[技術メモ]] #contents *1. ~.py起動時とJupyter(python対話モード)起動時の相違 [#abaf8955] ** カレントディレクトリ参照の表記方法 [#o9b5f50e] 通常起動(dirに'C:\~'の文字列?で保存される') os.path.dirname(__file__) 対話モードではこれが使えないらしい from pathlib import Pathを付けて os.path.dirname(os.path.abspath(sys.argv[0])) 相対パスならrelpathになる ***想定ユーザが複数人の場合は↑の書き方 [#kdaf1247] 1人のシミュレーションとかなら直接ディレクトリ書いた方が早い? ***JupiterだとJupiterが入ってるディレクトリ参照されるっぽい [#z526ef14] →実行の度にカレントディレクトリが移動していたので対話モードでは直接示した方が良さそう ~~ *2. 関数定義のdef内でデータフレームを表示しようとしても呼び出しの際に出てこない [#m9dcb80a] **対処法2つ [#z1c0c93f] ***関数にしないで普通の処理で書き連ねる [#j322c136] ***関数内ににデータフレームを表示させる関数を作る(まだ調べていない) [#hd2d8411] ~~ *3. データフレームの要素参照ilocの表記 [#j640019b] [#w8412be8] **df.iloc[][]とすると挙動がおかしくなる [#h0ceb153] iloc[1][1]で[1][2]の要素が参照されたり、for文でKeyError:0([0][0]などがない)が出たりする(Jupyterではfor文は正常?)~ →iloc[行,列]にしていれば問題なし ~ **df.iloc[0,1:N]は0行目の1からN-1列の要素まで取ってくる [#q8c17dfa] list index out of range系のエラーが出るときにたいていこのミスしてる ~~ *4. R言語環境をjupyterで実装 [#gd51845d] **(1)R言語専用の仮想環境作成 [#w33be642] バージョンを確認して,新環境にpythonインストール~ (Rlangは仮想環境名なので好きな名前でOK) python -V conda create -n Rlang python=3.6 -y anaconda prompt上でbaseから作成した仮想環境に移動 conda activate Rlang 新仮想環境上にjupyter導入 pip install jupyter environment_kernels 参照:~ https://nxdataka.netlify.app/rjup/ **(2)jupyter内用のR環境(Rカーネル)インストール [#ve4eef80] 従来なら r channelからパッケージがインストールされていたが,停止したため conda-forge channelから導入(参考: https://qiita.com/wasser/items/de6bd837969c4c3a3aa9 ) conda install r-irkernel -c conda-forge conda install r-essentials -c conda-forge **(3)Rを入れた仮想環境でrを入力(pythonと打つように) [#g3b38477] たぶん文字化けがひどいので,きれいな英語に直す(日本語は分からない) -anacondaに入っているR.exeのディレクトリをコピー~ --windows画面左下の検索窓でR.exeを入れると,R.exeの「ファイルの場所を開く」が出てくるのでクリック(bin直下が出るが,さらに下のx64内のR.exeのをコピー) -コマンドプロントを開いて,最初に設定されているディレクトリにバッチファイルを作る --テキストエディタに↓を貼り付けた後,名前を付けて保存(r.batにして「すべてのファイル」選択) chcp 437 C:\Users\~~~\anaconda3\pkgs\r-base-4.1.1-hddad469_1\lib\R\bin\x64\R.exe ↑さっきコピーしたディレクトリ -コマンドプロンプトでrを打つと直っているはず(cd移動せずに開いて初めのディレクトリで実行する) **%%(3)jupyterに仮想環境パス追加%% [#md6a7e1c] →Rterm.exeから「~~~.dllが見つからない」とシステムエラーが表示され,base本体のJupyter環境に影響が及ぶため,解決するまで非推奨~ ~ 仮想環境パスが追加されているかの確認 (base) C:\Users\User_name>conda config --show envs_dirs envs_dirs: - C:\Users\User_name\anaconda3\envs - C:\Users\User_name\.conda\envs - C:\Users\User_name\AppData\Local\conda\conda\envs baseに戻ってJupyter設定用ファイルを作成&編集 conda deactivate(または conda activate base で元に戻る) (base) C:\Users\User_name>jupyter notebook --generate-config Writing default config to: C:\Users\User_name\.jupyter\jupyter_notebook_config.py 保存されたディレクトリ先にあるjupyter_notebook_config.py内を編集 #c.NotebookApp.kernel_spec_manager_class = 'jupyter_client.kernelspec.KernelSpecManager' この1行が書かれているところを探し,この下に非コメントアウトで2行追加 c.NotebookApp.kernel_spec_manager_class='environment_kernels.EnvironmentKernelSpecManager' c.EnvironmentKernelSpecManager.conda_env_dirs=['C:/Users/User_name/anaconda3/envs'] 参照:~ https://www.servernote.net/article.cgi?id=anaconda-jupyter-notebook-on-myenv
タイムスタンプを変更しない
[[技術メモ]] #contents *1. ~.py起動時とJupyter(python対話モード)起動時の相違 [#abaf8955] ** カレントディレクトリ参照の表記方法 [#o9b5f50e] 通常起動(dirに'C:\~'の文字列?で保存される') os.path.dirname(__file__) 対話モードではこれが使えないらしい from pathlib import Pathを付けて os.path.dirname(os.path.abspath(sys.argv[0])) 相対パスならrelpathになる ***想定ユーザが複数人の場合は↑の書き方 [#kdaf1247] 1人のシミュレーションとかなら直接ディレクトリ書いた方が早い? ***JupiterだとJupiterが入ってるディレクトリ参照されるっぽい [#z526ef14] →実行の度にカレントディレクトリが移動していたので対話モードでは直接示した方が良さそう ~~ *2. 関数定義のdef内でデータフレームを表示しようとしても呼び出しの際に出てこない [#m9dcb80a] **対処法2つ [#z1c0c93f] ***関数にしないで普通の処理で書き連ねる [#j322c136] ***関数内ににデータフレームを表示させる関数を作る(まだ調べていない) [#hd2d8411] ~~ *3. データフレームの要素参照ilocの表記 [#j640019b] [#w8412be8] **df.iloc[][]とすると挙動がおかしくなる [#h0ceb153] iloc[1][1]で[1][2]の要素が参照されたり、for文でKeyError:0([0][0]などがない)が出たりする(Jupyterではfor文は正常?)~ →iloc[行,列]にしていれば問題なし ~ **df.iloc[0,1:N]は0行目の1からN-1列の要素まで取ってくる [#q8c17dfa] list index out of range系のエラーが出るときにたいていこのミスしてる ~~ *4. R言語環境をjupyterで実装 [#gd51845d] **(1)R言語専用の仮想環境作成 [#w33be642] バージョンを確認して,新環境にpythonインストール~ (Rlangは仮想環境名なので好きな名前でOK) python -V conda create -n Rlang python=3.6 -y anaconda prompt上でbaseから作成した仮想環境に移動 conda activate Rlang 新仮想環境上にjupyter導入 pip install jupyter environment_kernels 参照:~ https://nxdataka.netlify.app/rjup/ **(2)jupyter内用のR環境(Rカーネル)インストール [#ve4eef80] 従来なら r channelからパッケージがインストールされていたが,停止したため conda-forge channelから導入(参考: https://qiita.com/wasser/items/de6bd837969c4c3a3aa9 ) conda install r-irkernel -c conda-forge conda install r-essentials -c conda-forge **(3)Rを入れた仮想環境でrを入力(pythonと打つように) [#g3b38477] たぶん文字化けがひどいので,きれいな英語に直す(日本語は分からない) -anacondaに入っているR.exeのディレクトリをコピー~ --windows画面左下の検索窓でR.exeを入れると,R.exeの「ファイルの場所を開く」が出てくるのでクリック(bin直下が出るが,さらに下のx64内のR.exeのをコピー) -コマンドプロントを開いて,最初に設定されているディレクトリにバッチファイルを作る --テキストエディタに↓を貼り付けた後,名前を付けて保存(r.batにして「すべてのファイル」選択) chcp 437 C:\Users\~~~\anaconda3\pkgs\r-base-4.1.1-hddad469_1\lib\R\bin\x64\R.exe ↑さっきコピーしたディレクトリ -コマンドプロンプトでrを打つと直っているはず(cd移動せずに開いて初めのディレクトリで実行する) **%%(3)jupyterに仮想環境パス追加%% [#md6a7e1c] →Rterm.exeから「~~~.dllが見つからない」とシステムエラーが表示され,base本体のJupyter環境に影響が及ぶため,解決するまで非推奨~ ~ 仮想環境パスが追加されているかの確認 (base) C:\Users\User_name>conda config --show envs_dirs envs_dirs: - C:\Users\User_name\anaconda3\envs - C:\Users\User_name\.conda\envs - C:\Users\User_name\AppData\Local\conda\conda\envs baseに戻ってJupyter設定用ファイルを作成&編集 conda deactivate(または conda activate base で元に戻る) (base) C:\Users\User_name>jupyter notebook --generate-config Writing default config to: C:\Users\User_name\.jupyter\jupyter_notebook_config.py 保存されたディレクトリ先にあるjupyter_notebook_config.py内を編集 #c.NotebookApp.kernel_spec_manager_class = 'jupyter_client.kernelspec.KernelSpecManager' この1行が書かれているところを探し,この下に非コメントアウトで2行追加 c.NotebookApp.kernel_spec_manager_class='environment_kernels.EnvironmentKernelSpecManager' c.EnvironmentKernelSpecManager.conda_env_dirs=['C:/Users/User_name/anaconda3/envs'] 参照:~ https://www.servernote.net/article.cgi?id=anaconda-jupyter-notebook-on-myenv
テキスト整形のルールを表示する