「データサイエンスのための統計(41)学入門 ―予測、分類、統計モデリング、統計的機械学習とRプログラミング」Peter Bruce、Andrew Bruce。dockerで機械学習(72) with R (2)

# 1.すぐに利用したい方へ(as soon as)

データサイエンスのための統計学入門 ―予測、分類、統計モデリング、統計的機械学習とRプログラミング Peter Bruce、Andrew Bruce　著

![picture_large978-4-87311-828-4.jpeg](https://qiita-image-store.s3.amazonaws.com/0/51423/5d10d101-5733-7618-ad59-3c6bd8745d96.jpeg)
https://www.oreilly.co.jp/books/9784873118284/

 <この項は書きかけです。順次追記します。>
## docker
dockerを導入し、Windows, Macではdockerを起動しておいてください。
Windowsでは、BiosでIntel Virtualizationをenableにしないとdockerが起動しない場合があります。
また、セキュリティの警告などが出ることがあります。

## docker pull and run

```
$ docker pull kaizenjapan/r-sta

$ docker run -it kaizenjapan/r-sta /bin/bash
```

以下のshell sessionでは
(base) root@473fc1bb505d:/#は入力促進記号(comman prompt)です。実際には数字の部分が違うかもしれません。この行の#の右側を入力してください。
それ以外の行は出力です。出力にエラー、違いがあれば、コメント欄などでご連絡くださると幸いです。
それぞれの章のフォルダに移動します。

dockerの中と、dockerを起動したOSのシェルとが表示が似ている場合には、どちらで捜査しているか間違えることがあります。dockerの入力促進記号(comman prompt)に気をつけてください。

## ファイル共有または複写
dockerとdockerを起動したOSでは、ファイル共有をするか、ファイル複写するかして、生成したファイルをブラウザ等表示させてください。参考文献欄にやり方のURLを記載しています。

複写の場合は、dockerを起動したOS側コマンドを実行しました。お使いのdockerの番号で置き換えてください。複写したファイルをブラウザで表示し内容確認しました。

# 第1章

```
(base) root@9239fd07cbe8:/# ls
ML_for_Hackers	dev   lib    mnt   root  srv				 tmp
bin		etc   lib64  opt   run	 statistics-for-data-scientists  usr
boot		home  media  proc  sbin  sys				 var
(base) root@9239fd07cbe8:/# cd statistics-for-data-scientists/
(base) root@9239fd07cbe8:/statistics-for-data-scientists# ls
README.md  src
(base) root@9239fd07cbe8:/statistics-for-data-scientists# cd src
(base) root@9239fd07cbe8:/statistics-for-data-scientists/src# ls
chapter1.r  chapter3.r	chapter5.r  chapter7.r	     prep_datasets.r
chapter2.r  chapter4.r	chapter6.r  download_data.r
```

## 01 ufo_sightings.R 

```shell-session
(base) root@9239fd07cbe8:/statistics-for-data-scientists/src# r chapter1.r
Error in library(dplyr) : there is no package called ‘dplyr’
```


```
(base) root@9239fd07cbe8:/statistics-for-data-scientists/src# r --version
r ('littler') version 0.3.0

using GNU R Version 3.3.1 (2016-06-21)

Copyright (C) 2006 - 2016  Jeffrey Horner and Dirk Eddelbuettel

r is free software and comes with ABSOLUTELY NO WARRANTY.
You are welcome to redistribute it under the terms of the
GNU General Public License.  For more information about
these matters, see http://www.gnu.org/copyleft/gpl.html.
```
# 2. dockerを自力で構築する方へ
ここから下は、上記のpullしていただいたdockerをどういう方針で、どういう手順で作ったかを記録します。
上記のdockerを利用する上での参考資料です。本の続きを実行する上では必要ありません。
自力でdocker/anacondaを構築する場合の手順になります。
dockerfileを作る方法ではありません。ごめんなさい。
## docker
ubuntu, debianなどのLinuxを、linux, windows, mac osから共通に利用できる仕組み。
利用するOSの設定を変更せずに利用できるのがよい。
同じ仕様で、大量の人が利用することができる。
ソフトウェアの開発元が公式に対応しているものと、利用者が便利に仕立てたものの両方が利用可能である。今回は、公式に配布しているものを、自分で仕立てて、他の人にも利用できるようにする。

### docker pull
docker公式配布の利用は、URLからpullすることで実現する。

## apt

```shell-session
(base) root@473fc1bb505d:/# apt update

(base) root@473fc1bb505d:/# apt install -y procps

(base) root@473fc1bb505d:/# apt install -y vim

(base) root@473fc1bb505d:/# apt install -y apt-utils

(base) root@473fc1bb505d:/# apt install -y r-base

(base) root@473fc1bb505d:/# apt install -y r-cran-hmisc
```

## git
```
(base) root@f19e2f06eabb:/# git clone https://github.com/andrewgbruce/statistics-for-data-scientists
```

## wget

```
(base) root@9239fd07cbe8:/statistics-for-data-scientists/src/data# wget https://drive.google.com/drive/folders/0B98qpkK5EJemYnJ1ajA1ZVJwMzg
--2018-10-13 09:51:37--  https://drive.google.com/drive/folders/0B98qpkK5EJemYnJ1ajA1ZVJwMzg
Resolving drive.google.com (drive.google.com)... 172.217.26.110, 2404:6800:400a:80c::200e
Connecting to drive.google.com (drive.google.com)|172.217.26.110|:443... connected.
HTTP request sent, awaiting response... 200 OK
Length: unspecified [text/html]
Saving to: ‘0B98qpkK5EJemYnJ1ajA1ZVJwMzg’

0B98qpkK5EJemYnJ1aj     [  <=>               ] 171.76K   562KB/s    in 0.3s    

2018-10-13 09:51:38 (562 KB/s) - ‘0B98qpkK5EJemYnJ1ajA1ZVJwMzg’ saved [175879]

```
今出ているエラー

```
(base) root@9239fd07cbe8:/statistics-for-data-scientists/src# r chapter1.r
Error in library(dplyr) : there is no package called ‘dplyr’
```

dockerで機械学習(74) 環境構築(4) R いくつ難関？

# 3.docker hub 登録
ここからは、新たにソフトを導入したdockerを自分のhubに登録する方法です。
ご自身で何かソフトウェアを導入されたら、ぜひhubに登録することをお勧めします。
続きの作業を誰かに依頼したり、エラーがでてわからなくなったときに、対処方法を問い合わせるのにも役立ちます。

```
$ docker ps 
CONTAINER ID        IMAGE                   COMMAND                  CREATED             STATUS              PORTS                                            NAMES
b28c065c8b45        continuumio/anaconda3            "/usr/bin/tini -- /b…"   21 hours ago        Up 21 hours                                                                                  elegant_gates       

$ docker commit b28c065c8b45  kaizenjapan/r-sta
$ docker push kaizenjapan/r-sta

```

# 参考資料(reference)
Rのインストール
http://www.okadajp.org/RWiki/?R%20のインストール#td663091

dockerで機械学習(python:anaconda)「直感Deep Learning」Antonio Gulli、Sujit Pal　第1章,第2章
https://qiita.com/kaizen_nagoya/items/483ae708c71c88419c32

OpenCVをPythonで動かそうとしてlibGL.soが無いって言われたけど解決した。
https://qiita.com/toshitanian/items/5da24c0c0bd473d514c8

サーバサイドにおけるmatplotlibによる作図Tips
https://qiita.com/TomokIshii/items/3a26ee4453f535a69e9e

Dockerでホストとコンテナ間でのファイルコピー
https://qiita.com/gologo13/items/7e4e404af80377b48fd5

Docker for Mac でファイル共有を利用する
https://qiita.com/seijimomoto/items/1992d68de8baa7e29bb5

「名古屋のIoTは名古屋のOSで」Dockerをどっかーらどうやって使えばいいんでしょう。TOPPERS/FMP on RaspberryPi with Macintosh編 ５つの関門
https://qiita.com/kaizen_nagoya/items/9c46c6da8ceb64d2d7af

64bitCPUへの道 and/or 64歳の決意
https://qiita.com/kaizen_nagoya/items/cfb5ffa24ded23ab3f60

ゼロから作るDeepLearning２自然言語処理編　読書会の進め方（例）
https://qiita.com/kaizen_nagoya/items/025eb3f701b36209302e


## 一覧
物理記事　上位100
https://qiita.com/kaizen_nagoya/items/66e90fe31fbe3facc6ff

数学関連記事１００
https://qiita.com/kaizen_nagoya/items/d8dadb49a6397e854c6d

言語・文学記事　１００
https://qiita.com/kaizen_nagoya/items/42d58d5ef7fb53c407d6

医工連携関連記事一覧
https://qiita.com/kaizen_nagoya/items/6ab51c12ba51bc260a82

自動車　記事　１００
https://qiita.com/kaizen_nagoya/items/f7f0b9ab36569ad409c5

通信記事１００
https://qiita.com/kaizen_nagoya/items/1d67de5e1cd207b05ef7

日本語（０）一欄
https://qiita.com/kaizen_nagoya/items/7498dcfa3a9ba7fd1e68

英語(0) 一覧
https://qiita.com/kaizen_nagoya/items/680e3f5cbf9430486c7d

転職(0)一覧
https://qiita.com/kaizen_nagoya/items/f77520d378d33451d6fe

仮説（0）一覧（目標100現在40）
https://qiita.com/kaizen_nagoya/items/f000506fe1837b3590df

Qiita(0)Qiita関連記事一覧（自分）
https://qiita.com/kaizen_nagoya/items/58db5fbf036b28e9dfa6

鉄道（０）鉄道のシステム考察はてっちゃんがてつだってくれる
https://qiita.com/kaizen_nagoya/items/26bda595f341a27901a0

安全（0）安全工学シンポジウムに向けて: 21
https://qiita.com/kaizen_nagoya/items/c5d78f3def8195cb2409

一覧の一覧( The directory of directories of mine.) Qiita(100)
https://qiita.com/kaizen_nagoya/items/7eb0e006543886138f39

Ethernet 記事一覧　Ethernet(0)
https://qiita.com/kaizen_nagoya/items/88d35e99f74aefc98794

Wireshark 一覧 wireshark(0)、Ethernet(48) 
https://qiita.com/kaizen_nagoya/items/fbed841f61875c4731d0

線網（Wi-Fi）空中線(antenna)(0) 記事一覧(118/300目標)
https://qiita.com/kaizen_nagoya/items/5e5464ac2b24bd4cd001

OSEK OS設計の基礎　OSEK(100)
https://qiita.com/kaizen_nagoya/items/7528a22a14242d2d58a3

Error一覧 error(0)
https://qiita.com/kaizen_nagoya/items/48b6cbc8d68eae2c42b8

プログラマによる、プログラマのための、統計(0)と確率のプログラミングとその後
https://qiita.com/kaizen_nagoya/items/6e9897eb641268766909

官公庁・学校・公的団体（NPOを含む）システムの課題、官（０）
https://qiita.com/kaizen_nagoya/items/04ee6eaf7ec13d3af4c3

「はじめての」シリーズ　 ベクタージャパン　
https://qiita.com/kaizen_nagoya/items/2e41634f6e21a3cf74eb

AUTOSAR(0)Qiita記事一覧, OSEK(75)
https://qiita.com/kaizen_nagoya/items/89c07961b59a8754c869

プログラマが知っていると良い「公序良俗」
https://qiita.com/kaizen_nagoya/items/9fe7c0dfac2fbd77a945

LaTeX(0) 一覧　
https://qiita.com/kaizen_nagoya/items/e3f7dafacab58c499792

自動制御、制御工学一覧（０）
https://qiita.com/kaizen_nagoya/items/7767a4e19a6ae1479e6b

Rust(0) 一覧　
https://qiita.com/kaizen_nagoya/items/5e8bb080ba6ca0281927

小川清最終講義、最終講義（再）計画, Ethernet(100) 英語(100) 安全(100)
https://qiita.com/kaizen_nagoya/items/e2df642e3951e35e6a53

＜この記事は個人の過去の経験に基づく個人の感想です。現在所属する組織、業務とは関係がありません。＞
This article is an individual impression based on the individual's experience. It has nothing to do with the organization or business to which I currently belong.
### 文書履歴(document history)
ver. 0.10 初稿 20181014
ver. 0.11 番号変更、参考文献追記 20181029
### 最後までおよみいただきありがとうございました。
いいね　💚、フォローをお願いします。
#### Thank you very much for reading to the last sentence.
Please press the like icon 💚　and follow me for your happy life.