Casual Developers Note

エンジニアやデザイナー向けの技術情報・英語学習情報・海外留学情報・海外旅行情報を提供中。世界を旅して人生を楽しもう。

  • ホーム
  • 技術 Tips & Tutorials
  • 技術塾
  • ライフハック
  • 海外留学
  • 英語学習
  • コラム
  • お問い合わせ
現在の場所:ホーム / 技術 Tips & Tutorials / データサイエンスのためのAnaconda環境構築とJupyter Notebook入門

2018年1月3日 By KD コメントを書く

データサイエンスのためのAnaconda環境構築とJupyter Notebook入門

データサイエンスのためのAnaconda環境構築とJupyter Notebook入門

少し前からディープラーニングやAIなどのデータサイエンスが流行っています。一説によると海外の企業は優秀なデータサイエンティストを探していて、データサイエンティストの収入は最低でも1000万円は超えるらしいですね。これは海外で働いているシニアエンジニアと同じくらいの給料で、高騰していると言えます。理由は簡単で人が足りないからです。貴重なものには価値がつく。それだけです。今回はデータサイエンスを始めるための準備作業であるAnacondaとJupyter Notebookの使い方を紹介します。

見出し

  • 1 Anacondaとは?
  • 2 Jupyter Notebookとは?
  • 3 Anacondaの環境構築
    • 3.1 pyenvのインストール
    • 3.2 Anacondaのインストール
  • 4 Jupyter Notebookの使い方
    • 4.1 起動と停止
    • 4.2 新しいノートブックを作ってみる
    • 4.3 作ったノートブックを出力する
    • 4.4 作ったノートブックをシェアする
  • 5 最後に
  • 6 環境
    • 6.1 関連記事

Anacondaとは?

Anacondaとは、プログラミングに慣れていないデータサイエンスのためのPython開発環境です。簡単に言うとデータサイエンス向けの仮想環境やパッケージのインストールが簡単にできるよ、というものです。GUIとCUIの両方で提供されています。パッケージ内にはCondaというpipに代わるパッケージ管理ツールと、Jupyter Notebookが標準で入っています。Condaはパッケージをビルド済の状態でインストールできるので、各々の環境差分によるビルド失敗を防げます。個人的にはpipより優れていると思いますので、ついでに使ってみると良いと思いますよ。

https://anaconda.org/

Jupyter Notebookとは?

Jupyter Notebookは、データ分析などの作業をする時に、ソースコードを書いて実行結果を記録しながらノートブック形式でまとめるためのツールです。

http://jupyter.org/

Anacondaの環境構築

今回はインストーラをダウンロードしてきてインストールする方法はとりません。それは不便だからです。コーディング以外の作業はコマンドラインで完結すべきです。もしどうしてもインストーラが必要な方は上のAnacondaのサイトからダウンロードできます。

pyenvのインストール

pyenvとは、Pythonのバージョンを管理するためのツールです。Python2.7とPython3.5を切り替えて使うことができます。今回の場合はさらにanacondaを切り替えて使います。

pyenvのインストールに関しては以前に書いた「MacでRubyとPythonとJavaとNodeとPerlの複数バージョンを管理する方法」の記事を参考にしてください。

余談ですが、python以外の言語も同様の方法で管理したい人はanyenvを試してみると良いでしょう。

Anacondaのインストール

Pyenvからanacondaのバージョンを探してインストールします。コマンドラインから簡単にできます。

$ pyenv install -l
$ pyenv install anaconda3-4.3.0
$ mkdir my-project
$ cd my-project
$ pyenv local anaconda3-4.3.0
$ python --version
Python 3.6.0 :: Anaconda 4.3.0 (x86_64)

もしanaconda以外のPythonをあまり使わない場合は、pyenv globalを使用して下さい。

また、MinicondaというAnacondaから機能を削ぎ落としたバージョンもありますので、気になる方は調べてみて下さい。ただし、pyenvでインストールすると一部のコマンドが競合する可能性があるのでパスに気をつけてください。

https://conda.io/miniconda.html

Jupyter Notebookの使い方

起動と停止

Anacondaに入っているJupyter Notebookのバージョンを確認しましょう。

$ jupyter --version
4.2.1
$ jupyter notebook --version
4.3.1

大丈夫そうですね。では、さっそく起動してみましょう。

$ jupyter notebook
[I 16:28:09.211 NotebookApp] Serving notebooks from local directory: /Users/user/my-project
[I 16:28:09.211 NotebookApp] 0 active kernels
[I 16:28:09.211 NotebookApp] The Jupyter Notebook is running at: http://localhost:8888/?token=c7884031a95bc68086b28eb122a340bf73d7b4bf12d44d6b
[I 16:28:09.211 NotebookApp] Use Control-C to stop this server and shut down all kernels (twice to skip confirmation).
[C 16:28:09.216 NotebookApp]

    Copy/paste this URL into your browser when you connect for the first time,
    to login with a token:
        http://localhost:8888/?token=c7884031a95bc68086b28eb122a340bf73d7b4bf12d44d6b
[I 16:28:09.846 NotebookApp] Accepting one-time-token-authenticated connection from ::1

では「http://localhost:8888/tree」にアクセスしてみましょう。

スクリーンショット 2017 12 31 16 32 18

停止する時は普通にControl+Cでできます。

Shutdown this notebook server (y/[n])? y
[C 16:30:02.625 NotebookApp] Shutdown confirmed
[I 16:30:02.626 NotebookApp] Shutting down kernels

新しいノートブックを作ってみる

では新しノートブックを作ってみましょう。

Jupyter Notebookを起動したところから始めます。それでは「New -> Python3」をクリックして下さい。

スクリーンショット 2017 12 31 20 12 37

これでPython3のノートブックが作成されました。以下のようにコードを入力して、実行ボタンを押すと、以下のように実行結果が表示されます。

スクリーンショット 2017 12 31 20 16 20

メニューの「Code」のプルダウンからMarkdownに変更することもできます。

スクリーンショット 2017 12 31 20 16 39

こうすると普通にMarkdownで書けます。

スクリーンショット 2017 12 31 20 34 27

スクリーンショット 2017 12 31 20 33 33

こんな感じです。ソースコードの実行結果とMarkdownでデータ分析した内容を整理できることが分かります。

あと、ちゃんとファイルには名前をつけて分かるようにしましょう。
「File -> Rename」でできます。

スクリーンショット 2017 12 31 20 20 14

よくあるインターフェースなので分かりやすいです。

スクリーンショット 2017 12 31 20 20 29

作業が終了したら保存します。左端のアイコンからできます。

スクリーンショット 2017 12 31 20 18 30

そして終了します。
「File -> Close and Halt」です。

スクリーンショット 2017 12 31 20 22 06

終了すると、最初の一覧に戻ります。ここで作成したファイルを一覧で管理できます。ノートブック形式で保存されていることが分かりますね。

スクリーンショット 2017 12 31 20 20 46

作ったノートブックを出力する

作ったノートブックのページから「File -> Download as」から好きな形式でダウンロードできます。

出力できる形式

  • Notebook
  • Python
  • HTML
  • reST
  • PDF

スクリーンショット 2017 12 31 20 47 48

便利ですね。ほしいフォーマットはだいたいあります。

作ったノートブックをシェアする

作ったノートブックはnbviewerを通して世界にシェアできます。試してみて下さい。

https://nbviewer.jupyter.org/

最後に

いかがでしたか?初歩的な内容ではありますが、データサイエンスを始める上では役に立ったのではないでしょうか。今後TonsorFlowなどの流行りのディープラーニングライブラリを使う場合なども今回の環境からスタートできます。では。

環境

  • OS : macOS High Sierra 10.13.2
  • Anaconda : 4.3.0
  • Python : 3.6.0
  • Jupyter : 4.2.1
  • Jupyter Notebook : 4.3.1
The following two tabs change content below.
  • この記事を書いた人
  • 最新の記事
KD
Twitter のプロフィール

KD

世界を旅し日本を愛するエンジニア。大学でコンピュータサイエンスの楽しさを学び、日本の大手IT企業で働く中で、新しい技術やスケールするビジネスが北米にある事に気づく。世界に挑戦するための最大の壁が英語であったため、フィリピン留学およびカナダ留学を経て英語を上達させた。現在は日本在住でエンジニアとして働きつつ、次の挑戦に備えて世界の動向を注視している。挑戦に終わりはない。このブログでは、エンジニアやデザイナー向けの技術情報から、海外に留学したい人向けの留学情報、海外に興味がある人向けの海外旅行情報など、有益な情報を提供しています。
KD
Twitter のプロフィール

最新記事 by KD (全て見る)

  • 2020年JS周辺のバックエンド寄りの注目技術!ネクストNodeJSの「Deno」と分散型パッケージレジストリの「Entropic」の紹介 - 2020年1月13日
  • 今さら聞けないJavaによる関数型プログラミング入門 ~ラムダ式、ストリーム、関数型インターフェース~ - 2019年11月4日
  • ReactのためのEslintおよびPrettierの設定方法 ~Airbnb JavaScript Style Guideの適用~ - 2019年10月30日

関連記事

  • [Tutorial][Electron] Electronで文章を話すアプリを作ってみよう #1 開発環境準備編

    最近Electronが面白くて仕方がないです。なんてったって、Webの標準技術でデスクトップアプリが作れちゃうんですから…

  • [tips][Tool] MacでRubyとPythonとJavaとNodeとPerlの複数バージョンを管理する方法

    iPhone6sですか?予約しました、Keidです。 今月で20代ラストの年になってしまいました。30代が目前になるとい…

  • [tips][Tumblr] Tumblrでソースコードをシンタックスハイライトする方法

    プログラマがTumblrをメインのブログにした時に困るのは、シンタックスハイライトです。私はめんどくさがりなので、シンタ…

  • [tips][perl] Perlのサブルーチン呼び出しにアンパーサンドは必要か?

    Perlでサブルーチンを呼び出す方法はいくつかあります。ググっても正確な情報がヒットしなかったので、自分でまとめておきま…

  • ChatfuelでFacebookメッセンジャーを使うChatbot簡単入門

    AIの流行りと共に人気が出ているChatbotですが、最近ではサービスを使って簡単に作れるようになりました。今回はCha…

  • [tips][Perl] OLEを使ってPerlからOutlookのメールを送信する方法

    WindowsにはOLEオートメーションというWindowsのアプリケーションにアクセスするインターフェースがあります。…

  • [tips][Kotlin] GradleでKotlin入門

    皆さん、お久しぶりです。Keidです。 気づくとかなり更新していませんでした。 え、何してたって?炎上案件に決まってるで…

カテゴリ : 技術 Tips & Tutorials タグ : anaconda, jupyter, python

コメントを残す コメントをキャンセル

メールアドレスが公開されることはありません。 * が付いている欄は必須項目です

このサイトはスパムを低減するために Akismet を使っています。コメントデータの処理方法の詳細はこちらをご覧ください。

ブログ更新情報や海外の関連情報などを配信する無料メルマガ

Sponsored Links

About Author

KD

世界を旅し日本を愛するエンジニア。大学でコンピュータサイエンスの楽しさを学び、日本の大手IT企業で働く中で、新しい技術やスケールするビジネスが北米にある事に気づく。世界に挑戦するための最大の壁が英語であったため、フィリピン留学およびカナダ留学を経て英語を上達させた。現在は日本在住でエンジニアとして働きつつ、次の挑戦に備えて世界の動向を注視している。挑戦に終わりはない。このブログでは、エンジニアやデザイナー向けの技術情報から、海外に留学したい人向けの留学情報、海外に興味がある人向けの海外旅行情報など、有益な情報を提供しています。

https://casualdevelopers.com/

最近の投稿

  • 2020年JS周辺のバックエンド寄りの注目技術!ネクストNodeJSの「Deno」と分散型パッケージレジストリの「Entropic」の紹介

    2020年JS周辺のバックエンド寄りの注目技術!ネクストNodeJSの「Deno」と分散型パッケージレジストリの「Entropic」の紹介

    2020年1月13日
  • 今さら聞けないJavaによる関数型プログラミング入門 ~ラムダ式、ストリーム、関数型インターフェース~

    今さら聞けないJavaによる関数型プログラミング入門 ~ラムダ式、ストリーム、関数型インターフェース~

    2019年11月4日
  • ReactのためのEslintおよびPrettierの設定方法 ~Airbnb JavaScript Style Guideの適用~

    ReactのためのEslintおよびPrettierの設定方法 ~Airbnb JavaScript Style Guideの適用~

    2019年10月30日
  • BashからZshに移行する方法(Mac編)

    BashからZshに移行する方法(Mac編)

    2019年10月21日
  • Create React Appを使わないでゼロからReactの開発環境を構築する方法(Webpack/Docker編)

    Create React Appを使わないでゼロからReactの開発環境を構築する方法(Webpack/Docker編)

    2019年9月30日

カテゴリ

  • 技術 Tips & Tutorials (100)
  • 技術塾 (6)
  • ライフハック (26)
  • 海外留学 (12)
  • 英語学習 (3)
  • コラム (6)

アーカイブ

最高の学習のために

人気記事ランキング

  • MySQLで「ERROR 2003 (HY000): Can't connect to MySQL server」と怒られた時の対処法
    MySQLで「ERROR 2003 (HY000): Can't connect to MySQL server」と怒られた時の対処法
  • Jupyter Notebookで「The kernel appears to have died. It will restart automatically.」というエラーが出た場合の原因と対処法
    Jupyter Notebookで「The kernel appears to have died. It will restart automatically.」というエラーが出た場合の原因と対処法
  • SAKURAのメールボックスで独自ドメインのメールを設定し、Gmail経由で送受信する方法
    SAKURAのメールボックスで独自ドメインのメールを設定し、Gmail経由で送受信する方法
  • バンクーバー留学豆知識:バンクーバーのATMで日本の銀行のキャッシュカードを使ってお得にお金を引き出す方法
    バンクーバー留学豆知識:バンクーバーのATMで日本の銀行のキャッシュカードを使ってお得にお金を引き出す方法
  • Amazon EC2インスタンスにSSHできなくなった時の対処法
    Amazon EC2インスタンスにSSHできなくなった時の対処法
  • Expressで「Cannot set headers after they are sent to the client」と怒られた時の対処法
    Expressで「Cannot set headers after they are sent to the client」と怒られた時の対処法
  • TumblrからWordPressにブログ移転する最適な方法
    TumblrからWordPressにブログ移転する最適な方法
  • SpringBootのProfile毎にプロパティを使い分ける3つの方法
    SpringBootのProfile毎にプロパティを使い分ける3つの方法
  • 今さら聞けないJavaによる関数型プログラミング入門 ~ラムダ式、ストリーム、関数型インターフェース~
    今さら聞けないJavaによる関数型プログラミング入門 ~ラムダ式、ストリーム、関数型インターフェース~
  • バンクーバー留学豆知識: バンクーバーのカジノを攻略せよ!必勝法を公開します!
    バンクーバー留学豆知識: バンクーバーのカジノを攻略せよ!必勝法を公開します!

Bitcoin寄付 / BTC Donation

Bitcoinを寄付しよう

BTC
Select Payment Method
Personal Info

Donation Total: BTC 0.0010

このブログの運営のためにBitcoinでの寄付を募集しています。お気持ち程度の寄付を頂けると管理者の励みになります。

Bitcoin寄付について知りたい方はこちらの記事へ

The following two tabs change content below.
  • この記事を書いた人
  • 最新の記事
KD
Twitter のプロフィール

KD

世界を旅し日本を愛するエンジニア。大学でコンピュータサイエンスの楽しさを学び、日本の大手IT企業で働く中で、新しい技術やスケールするビジネスが北米にある事に気づく。世界に挑戦するための最大の壁が英語であったため、フィリピン留学およびカナダ留学を経て英語を上達させた。現在は日本在住でエンジニアとして働きつつ、次の挑戦に備えて世界の動向を注視している。挑戦に終わりはない。このブログでは、エンジニアやデザイナー向けの技術情報から、海外に留学したい人向けの留学情報、海外に興味がある人向けの海外旅行情報など、有益な情報を提供しています。
KD
Twitter のプロフィール

最新記事 by KD (全て見る)

  • 2020年JS周辺のバックエンド寄りの注目技術!ネクストNodeJSの「Deno」と分散型パッケージレジストリの「Entropic」の紹介 - 2020年1月13日
  • 今さら聞けないJavaによる関数型プログラミング入門 ~ラムダ式、ストリーム、関数型インターフェース~ - 2019年11月4日
  • ReactのためのEslintおよびPrettierの設定方法 ~Airbnb JavaScript Style Guideの適用~ - 2019年10月30日

関連記事

  • [Tutorial][Electron] Electronで文章を話すアプリを作ってみよう #1 開発環境準備編

    最近Electronが面白くて仕方がないです。なんてったって、Webの標準技術でデスクトップアプリが作れちゃうんですから…

  • [tips][Tool] MacでRubyとPythonとJavaとNodeとPerlの複数バージョンを管理する方法

    iPhone6sですか?予約しました、Keidです。 今月で20代ラストの年になってしまいました。30代が目前になるとい…

  • [tips][Tumblr] Tumblrでソースコードをシンタックスハイライトする方法

    プログラマがTumblrをメインのブログにした時に困るのは、シンタックスハイライトです。私はめんどくさがりなので、シンタ…

  • [tips][perl] Perlのサブルーチン呼び出しにアンパーサンドは必要か?

    Perlでサブルーチンを呼び出す方法はいくつかあります。ググっても正確な情報がヒットしなかったので、自分でまとめておきま…

  • ChatfuelでFacebookメッセンジャーを使うChatbot簡単入門

    AIの流行りと共に人気が出ているChatbotですが、最近ではサービスを使って簡単に作れるようになりました。今回はCha…

  • [tips][Perl] OLEを使ってPerlからOutlookのメールを送信する方法

    WindowsにはOLEオートメーションというWindowsのアプリケーションにアクセスするインターフェースがあります。…

  • [tips][Kotlin] GradleでKotlin入門

    皆さん、お久しぶりです。Keidです。 気づくとかなり更新していませんでした。 え、何してたって?炎上案件に決まってるで…

ビットコイン取引ならここ

  • ホーム
  • 技術 Tips & Tutorials
  • 技術塾
  • ライフハック
  • 海外留学
  • 英語学習
  • コラム
  • サイトマップ
  • タグ一覧
  • プライバシーポリシー
  • お問い合わせ

Copyright © 2023 KD - Casual Developers Notes