Last active
March 26, 2016 08:53
-
-
Save Cartman0/e935b27775f5b524737a to your computer and use it in GitHub Desktop.
Jupyter notebookインストール手順
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
{ | |
"cells": [ | |
{ | |
"metadata": { | |
"heading_collapsed": true, | |
"toc": "true" | |
}, | |
"cell_type": "markdown", | |
"source": "# Table of Contents\n <p><div class=\"lev1\"><a href=\"#Jupyter-Notebook-導入手順-1\"><span class=\"toc-item-num\">1 </span>Jupyter Notebook 導入手順</a></div><div class=\"lev2\"><a href=\"#Jpyter-Notebook-とは-1.1\"><span class=\"toc-item-num\">1.1 </span>Jpyter Notebook とは</a></div><div class=\"lev2\"><a href=\"#サンプル-1.2\"><span class=\"toc-item-num\">1.2 </span>サンプル</a></div><div class=\"lev3\"><a href=\"#Markdown-1.2.1\"><span class=\"toc-item-num\">1.2.1 </span>Markdown</a></div><div class=\"lev3\"><a href=\"#Markdown(数式)-1.2.2\"><span class=\"toc-item-num\">1.2.2 </span>Markdown(数式)</a></div><div class=\"lev3\"><a href=\"#コード-1.2.3\"><span class=\"toc-item-num\">1.2.3 </span>コード</a></div><div class=\"lev2\"><a href=\"#インストール手順-1.3\"><span class=\"toc-item-num\">1.3 </span>インストール手順</a></div><div class=\"lev3\"><a href=\"#環境-1.3.1\"><span class=\"toc-item-num\">1.3.1 </span>環境</a></div><div class=\"lev3\"><a href=\"#インストール-1.3.2\"><span class=\"toc-item-num\">1.3.2 </span>インストール</a></div><div class=\"lev2\"><a href=\"#jupyter-notebookの起動-1.4\"><span class=\"toc-item-num\">1.4 </span>jupyter notebookの起動</a></div><div class=\"lev3\"><a href=\"#起動-1.4.1\"><span class=\"toc-item-num\">1.4.1 </span>起動</a></div><div class=\"lev3\"><a href=\"#ノートの作成-1.4.2\"><span class=\"toc-item-num\">1.4.2 </span>ノートの作成</a></div><div class=\"lev3\"><a href=\"#ショートカットキー-1.4.3\"><span class=\"toc-item-num\">1.4.3 </span>ショートカットキー</a></div><div class=\"lev2\"><a href=\"#ノートの共有-1.5\"><span class=\"toc-item-num\">1.5 </span>ノートの共有</a></div><div class=\"lev3\"><a href=\"#クラウドでの共有-1.5.1\"><span class=\"toc-item-num\">1.5.1 </span>クラウドでの共有</a></div><div class=\"lev4\"><a href=\"#ホームディレクトリの変更-1.5.1.1\"><span class=\"toc-item-num\">1.5.1.1 </span>ホームディレクトリの変更</a></div><div class=\"lev3\"><a href=\"#Gist・Githubで共有-1.5.2\"><span class=\"toc-item-num\">1.5.2 </span>Gist・Githubで共有</a></div><div class=\"lev4\"><a href=\"#注意-1.5.2.1\"><span class=\"toc-item-num\">1.5.2.1 </span>注意</a></div><div class=\"lev4\"><a href=\"#markdownで画像挿入したノートをgist-にup-する時の注意-1.5.2.2\"><span class=\"toc-item-num\">1.5.2.2 </span>markdownで画像挿入したノートをgist にup する時の注意</a></div><div class=\"lev2\"><a href=\"#参考リンク-1.6\"><span class=\"toc-item-num\">1.6 </span>参考リンク</a></div>" | |
}, | |
{ | |
"metadata": {}, | |
"cell_type": "markdown", | |
"source": "# Jupyter Notebook 導入手順" | |
}, | |
{ | |
"metadata": {}, | |
"cell_type": "markdown", | |
"source": "## Jpyter Notebook とは" | |
}, | |
{ | |
"metadata": {}, | |
"cell_type": "markdown", | |
"source": "- markdown で書ける\n\nmarkdown上で数式も書ける。\n\n- **コードも実行できる**\n\nコードの実行結果も出力される。\n\nコードの補完機能(tabキー)もある。\n\n- 共有機能\n\ngithub(gist)にupするとhtml に自動変換される。\n\n[nbviewer](http://nbviewer.jupyter.org/) からも閲覧でき、ファイルをDLできる。\nnbviewer から見ると以下のリンクになる。\n\nhttp://nbviewer.jupyter.org/gist/Cartman0/e935b27775f5b524737a/JupyterNotebookIntroduction.ipynb\n\n- 無料で使える!" | |
}, | |
{ | |
"metadata": {}, | |
"cell_type": "markdown", | |
"source": "デメリットとしては、\n\n- evernote のような複数ノートの検索ができない\n- タグ機能なし" | |
}, | |
{ | |
"metadata": {}, | |
"cell_type": "markdown", | |
"source": "## サンプル" | |
}, | |
{ | |
"metadata": {}, | |
"cell_type": "markdown", | |
"source": "### Markdown" | |
}, | |
{ | |
"metadata": {}, | |
"cell_type": "markdown", | |
"source": "ここはMarkdownです。\n\n - list1\n - list2\n - list3\n\n- list1\n- list2\n- list3\n\n\n 1. order1\n 2. order2\n 3. order3\n\n1. order1\n2. order2\n3. order3\n\n\n\n | left | center | right |\n |:--|:--:|--:|\n | data1 | data2 | data3 |\n\n| left | center | right |\n|:--|:--:|--:|\n| data1 | data2 | data3 |" | |
}, | |
{ | |
"metadata": {}, | |
"cell_type": "markdown", | |
"source": "### Markdown(数式)" | |
}, | |
{ | |
"metadata": {}, | |
"cell_type": "markdown", | |
"source": " $x^2$は、xの2乗です。\n \n$x^2$は、xの2乗です。\n\n\n $$f'(x) = \\lim_{\\Delta x \\rightarrow 0} \\frac{f(x+\\Delta x)-f(x)}{\\Delta x}$$\n\n$$\nf'(x) = \\lim_{\\Delta x \\rightarrow 0}{\\frac{f(x+\\Delta x)-f(x)}{\\Delta x}}\n$$\n\n" | |
}, | |
{ | |
"metadata": {}, | |
"cell_type": "markdown", | |
"source": "### コード" | |
}, | |
{ | |
"metadata": { | |
"trusted": false, | |
"collapsed": false | |
}, | |
"cell_type": "code", | |
"source": "print('コードも書けるぞ')\nprint('Hello World')", | |
"execution_count": 7, | |
"outputs": [ | |
{ | |
"name": "stdout", | |
"output_type": "stream", | |
"text": "コードも書けるぞ\nHello World\n" | |
} | |
] | |
}, | |
{ | |
"metadata": { | |
"trusted": false, | |
"scrolled": true, | |
"collapsed": false | |
}, | |
"cell_type": "code", | |
"source": "1+1", | |
"execution_count": 8, | |
"outputs": [ | |
{ | |
"execution_count": 8, | |
"metadata": {}, | |
"data": { | |
"text/plain": "2" | |
}, | |
"output_type": "execute_result" | |
} | |
] | |
}, | |
{ | |
"metadata": { | |
"trusted": false, | |
"collapsed": false | |
}, | |
"cell_type": "code", | |
"source": "def fib(_max: int) -> list:\n pre, now = 0, 1\n result=[]\n while(now < _max):\n result.append(now)\n pre, now = now, pre+now\n return result\n\nfib(1000)", | |
"execution_count": 9, | |
"outputs": [ | |
{ | |
"execution_count": 9, | |
"metadata": {}, | |
"data": { | |
"text/plain": "[1, 1, 2, 3, 5, 8, 13, 21, 34, 55, 89, 144, 233, 377, 610, 987]" | |
}, | |
"output_type": "execute_result" | |
} | |
] | |
}, | |
{ | |
"metadata": {}, | |
"cell_type": "markdown", | |
"source": "sympy を使うと数式をそのまま出力ということもできる。" | |
}, | |
{ | |
"metadata": { | |
"trusted": false, | |
"collapsed": false | |
}, | |
"cell_type": "code", | |
"source": "from sympy import Symbol\nfrom sympy import init_printing\ninit_printing()\n\nx=Symbol('x')\ny=Symbol('y')\n\nexpr = (x+y)**2\nexpr", | |
"execution_count": 10, | |
"outputs": [ | |
{ | |
"execution_count": 10, | |
"metadata": {}, | |
"data": { | |
"text/latex": "$$\\left(x + y\\right)^{2}$$", | |
"text/plain": " 2\n(x + y) " | |
}, | |
"output_type": "execute_result" | |
} | |
] | |
}, | |
{ | |
"metadata": { | |
"trusted": false, | |
"scrolled": true, | |
"collapsed": false | |
}, | |
"cell_type": "code", | |
"source": "expr.expand()", | |
"execution_count": 11, | |
"outputs": [ | |
{ | |
"execution_count": 11, | |
"metadata": {}, | |
"data": { | |
"text/latex": "$$x^{2} + 2 x y + y^{2}$$", | |
"text/plain": " 2 2\nx + 2⋅x⋅y + y " | |
}, | |
"output_type": "execute_result" | |
} | |
] | |
}, | |
{ | |
"metadata": {}, | |
"cell_type": "markdown", | |
"source": "## インストール手順" | |
}, | |
{ | |
"metadata": {}, | |
"cell_type": "markdown", | |
"source": "### 環境" | |
}, | |
{ | |
"metadata": {}, | |
"cell_type": "markdown", | |
"source": "- Windows10 64bit\n - conda 4.05\n - python 3.5.1" | |
}, | |
{ | |
"metadata": {}, | |
"cell_type": "markdown", | |
"source": "### インストール" | |
}, | |
{ | |
"metadata": {}, | |
"cell_type": "markdown", | |
"source": "インストール方法は、公式にも書いてある\n\nhttps://jupyter.readthedocs.org/en/latest/install.html#new-to-python-and-jupyter\n\n1. パッケージ「jupyter」 を検索\n > conda search jupyter\n\n Using Anaconda Cloud api site https://api.anaconda.org\n Fetching package metadata: ....\n jupyter 1.0.0 py27_0 defaults\n 1.0.0 py34_0 defaults\n 1.0.0 py35_0 defaults\n 1.0.0 py27_1 defaults\n 1.0.0 py34_1 defaults\n 1.0.0 py35_1 defaults\n 1.0.0 py27_2 defaults\n 1.0.0 py34_2 defaults\n * 1.0.0 py35_2 defaults\n\n2. jupyter をインストール\n > conda install jupyter\n \n3. インストールされたか確認\n > jupyter --version\n \n 4.1.0\n \njupyter notebook コマンドが使えるか確認\n\n > jupyter notebook --version\n \n 4.1.0\n " | |
}, | |
{ | |
"metadata": {}, | |
"cell_type": "markdown", | |
"source": "## jupyter notebookの起動" | |
}, | |
{ | |
"metadata": {}, | |
"cell_type": "markdown", | |
"source": "### 起動" | |
}, | |
{ | |
"metadata": {}, | |
"cell_type": "markdown", | |
"source": "立ち上げてみよう。\n\n jupyter notebook\n \nブラウザが立ち上がる。" | |
}, | |
{ | |
"metadata": {}, | |
"cell_type": "markdown", | |
"source": "### ノートの作成 " | |
}, | |
{ | |
"metadata": {}, | |
"cell_type": "markdown", | |
"source": "http://localhost:8888/tree の右上から「New」> 「Python3」 を選択するとノートを作成。 \n\n![ノートの作成](https://gist.githubusercontent.com/Cartman0/e935b27775f5b524737a/raw/adc9138036110aa3e415f550748ed9baaf848134/create_note.jpg)" | |
}, | |
{ | |
"metadata": {}, | |
"cell_type": "markdown", | |
"source": "### ショートカットキー" | |
}, | |
{ | |
"metadata": {}, | |
"cell_type": "markdown", | |
"source": "メニューから、Help > Keyboard Shortcuts から見れる。" | |
}, | |
{ | |
"metadata": {}, | |
"cell_type": "markdown", | |
"source": "Commandモード\n\n| 機能 | ショートカット |\n|:-:|:-:|\n| Editモードへ切り替え | <kbd>Enter</kbd> |\n|ファイルの保存|<kbd>s</kbd> or <kbd><kbd>Ctrl</kbd>+<kbd>s</kbd></kbd>|\n|ファイル内検索・置き換え|<kbd>f</kbd>|\n|Markdownセルへ切り替え|<kbd>m</kbd>|\n|Codeセルへ切り替え|<kbd>y</kbd>|\n|カーソル移動|down:<kbd>j</kbd> or <kbd>↓</kbd>, up:<kbd>k</kbd> or <kbd>↑</kbd>|\n| セルの削除 | <kbd>d</kbd>, <kbd>d</kbd> |\n|選択中のセルの実行|<kbd><kbd>Ctrl</kbd>+<kbd>Enter</kbd></kbd>|\n|セルの実行+下のセルへ|<kbd><kbd>Shift</kbd>+<kbd>Enter</kbd></kbd>|\n|セルの実行+下にセルを追加|<kbd><kbd>Alt</kbd>+<kbd>Enter</kbd></kbd>|\n|下にセルを追加|<kbd>b</kbd>|\n|上にセルを追加|<kbd>a</kbd>|\n|セルのコピー|<kbd>c</kbd>|\n|セルのペースト|<kbd>v</kbd>|" | |
}, | |
{ | |
"metadata": {}, | |
"cell_type": "markdown", | |
"source": "Editモード\n\n| 機能 | ショートカット |\n|:-:|:-:|\n| Commandモードへ切り替え | <kbd>Esc</kbd> or <kbd><kbd>Ctrl</kbd>+<kbd>M</kbd></kbd> |\n| 補完 or インデント | <kbd>Tab</kbd> |\n| 1行削除 | <kbd><kbd>Ctrl</kbd>+<kbd>d</kbd></kbd> or <kbd><kbd>Shift</kbd>+<kbd>Delete</kbd></kbd> |" | |
}, | |
{ | |
"metadata": {}, | |
"cell_type": "markdown", | |
"source": "## ノートの共有" | |
}, | |
{ | |
"metadata": {}, | |
"cell_type": "markdown", | |
"source": "ノートファイル(.ipynb)をGoogleDriveまたは、Dropboxに上げておくとほかの環境で実行・保存・バックアップもできる。" | |
}, | |
{ | |
"metadata": {}, | |
"cell_type": "markdown", | |
"source": "### クラウドでの共有" | |
}, | |
{ | |
"metadata": {}, | |
"cell_type": "markdown", | |
"source": "#### ホームディレクトリの変更" | |
}, | |
{ | |
"metadata": {}, | |
"cell_type": "markdown", | |
"source": "http://localhost:8888/tree は、デフォだとディレクトリとして、C:/Users/[user]/ あたりが開かれる。\nこれをGoogleDriveかDropboxに、ノート用のワークスペースを作っておくとノートファイルを作りやすいし、開きやすい。\n\n1.設定ファイルの作成\n\n以下のコマンドで、~/.jupyter内にjupyter_application_config.py という設定ファイルが生成される。\n \n jupyter notebook --generate-config\n\n2.設定ファイルの190行目あたりを変更する。\n\n今回は、GoogleDrive上に、JupyterNoteというワークスペース(フォルダ)を作成。\n\n # The directory to use for notebooks and kernels.\n c.NotebookApp.notebook_dir = u'GoogleDrive\\\\JupyterNote'\n\nこれでホームディレクトリが変更される。\n\n参考:[Jupyter Notebookをインストール・設定して勉強ノート作成環境をつくる [Mac] Qiita](http://qiita.com/sasaki77/items/bfa53828c973ba46e34d)" | |
}, | |
{ | |
"metadata": { | |
"collapsed": true | |
}, | |
"cell_type": "markdown", | |
"source": "### Gist・Githubで共有" | |
}, | |
{ | |
"metadata": {}, | |
"cell_type": "markdown", | |
"source": "Gist・Githubに.ipynbファイルをupして共有できる。\n**コードの実行はできなく、閲覧のみ**。\n\nリポジトリページにアクセスすると、HTMLに変換される。\n\nまた、[nbviewer](http://nbviewer.jupyter.org/) から閲覧すると、\nHTMLに変換されたページが表示されるのでスマホのブラウザからも閲覧される。\n\n(※iPhone Safariでgistページにアクセスすると、.ipynbの実体であるjsonが開かれた。)\n" | |
}, | |
{ | |
"metadata": {}, | |
"cell_type": "markdown", | |
"source": "#### 注意" | |
}, | |
{ | |
"metadata": {}, | |
"cell_type": "markdown", | |
"source": "この際、gist secretも使えるが、\ngit secret はURLが特定されると誰でも見られてしまうので注意。\n\n見られたくないノートは\n- ローカル(+クラウド) or\n- Github private \n\nにすべき。" | |
}, | |
{ | |
"metadata": {}, | |
"cell_type": "markdown", | |
"source": "#### markdownで画像挿入したノートをgist にup する時の注意" | |
}, | |
{ | |
"metadata": {}, | |
"cell_type": "markdown", | |
"source": "markdownで挿入した画像ありノート(.ipynb)をGist にそのままupしても、画像自体はアップロードされない。\n\nその場合、画像ファイルを参照できるようにどこかに上げておく必要がある。\nわかりやすいのは、画像ファイルを.ipynbと同じGistリポジトリに上げておく。\n\n[Gistに画像をupload - はしくれエンジニアもどきのメモ](http://cartman0.hatenablog.com/embed/2016/03/26/160718)\n\n<iframe src=\"http://cartman0.hatenablog.com/embed/2016/03/26/160718\" title=\"Gistに画像をupload - はしくれエンジニアもどきのメモ\" class=\"embed-card embed-blogcard\" scrolling=\"no\" frameborder=\"0\" style=\"display: block; width: 100%; height: 190px; max-width: 500px; margin: 10px 0px;\"></iframe>\n" | |
}, | |
{ | |
"metadata": {}, | |
"cell_type": "markdown", | |
"source": "## 参考リンク" | |
}, | |
{ | |
"metadata": {}, | |
"cell_type": "markdown", | |
"source": "- [Jupyter (iPython) Notebookを使って技術ノート環境を構築する方法](http://myenigma.hatenablog.com/entry/2016/02/20/183423)\n- [IPython Notebookのススメ Qiita](http://qiita.com/ssh0/items/caf3739b934c1d66974b)\n- [Jupyter Notebookをインストール・設定して勉強ノート作成環境をつくる [Mac] Qiita](http://qiita.com/sasaki77/items/bfa53828c973ba46e34d)" | |
} | |
], | |
"metadata": { | |
"toc": { | |
"toc_threshold": "6", | |
"toc_section_display": "none", | |
"toc_window_display": false, | |
"toc_number_sections": true, | |
"toc_cell": true | |
}, | |
"kernelspec": { | |
"name": "python3", | |
"display_name": "Python 3", | |
"language": "python" | |
}, | |
"_draft": { | |
"nbviewer_url": "https://gist.github.com/e935b27775f5b524737a" | |
}, | |
"gist": { | |
"id": "e935b27775f5b524737a", | |
"data": { | |
"description": "Jupyter notebookインストール手順", | |
"public": true | |
} | |
}, | |
"language_info": { | |
"name": "python", | |
"file_extension": ".py", | |
"codemirror_mode": { | |
"name": "ipython", | |
"version": 3 | |
}, | |
"version": "3.5.1", | |
"mimetype": "text/x-python", | |
"nbconvert_exporter": "python", | |
"pygments_lexer": "ipython3" | |
} | |
}, | |
"nbformat": 4, | |
"nbformat_minor": 0 | |
} |
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment