講義の要点をGoogleColabで記録し試験対策に役立てましょう。

  • Google Colaboratory へようこそをクリック.

  • 「ノートブックを開く」という画面になりますが、一旦キャンセルをクリックします.

  • 「Colab へようこそ」のページで概要の説明があり、左にこのページの目次が表示されています.
    「Colab へようこそ」は見本と考えてください。
    文章とプログラムを含み、word,excel を合わせた機能を持ちます。

  • 文章の部分をダブルクリックしてください。
    左がmarkdown というマークアップ言語、右がプレビューとなります。
    (エスケープ Esc で文章表示に戻ります)
    これをテキストセルといい、これらをつなげて文書を作成します。

1 ノート作成.

  • ファイルから「ドライブの新しいノートブック」を開きます
  • +テキストを押すと、テキストセルができます。
    そこに、「#情報科学」をコピペしてください。(ctl+C, ctl+V).
  • +テキストを押し、セルに「## 第1章 度数分布」をコピペ.
  • +テキストを押し、セルに「### 例題1」をコピペ.

左上の目次をクリックすると目次が表示されます。
「#は目次の階層を表しています」#の後に半角スペースを入れます。
「#をつけなければ、普通の文章になります」半角スペース2個で改行します。

# 情報科学  
## 1章 度数分布   
### 例題1
### 演習1

1.1 コードセル.

GoogleColab では Python, R, Julia の3種類のプログラム言語を使用することができます。

  • ランタイムから「ランタイムのタイプを変更」をクリックすると、デフォルトではPythonになっていることが分かります.

  • R に変更して保存をクリックします。

  • +コード を押し、次のコードをコピペします。
    ▶️を押すと a に値が代入されます。

a<- c(51,31,75,81,40,92,52,65,64,43,35,
      62,75,53,65,80,85,63,92,39,72,66,
      45,52,59,73,39,55,53,40,85,49,56,
      55,75,95,35,53,62,45,44,65,75,43,
      50,45,55,75,60,45,58,33,44,60,50)
  • +コード を押し、次のコードをコピペします。
    ▶️を押すと ヒストグラムが作成されます。
h <- hist(a,breaks=seq(29.5, 99.5, by = 10))

1.2 保存.

  • 保存を押すと GooglDrive に保存されます。
  • ファイル名を左上で「1章」としておくと分かりやすいでしょう。

1.3 メリット.

  • テキストやレジメは長いですが、重要な部分だけピックアップしておくことで復習に便利です.
  • コードを変えて、自分でシミュレーションができます。

2 セルの移動

  • セルをクリックすると、右の方にセルを操作するアイコンが出てきます。
  • ↑ や ↓ を押してセルを移動し、文書を整えることができます。
  • 前回のコードは例題1のものなので、例題1の下に移動します。

次の演習1のコードをコピペして実行しましょう。

a<- c(160,159,164,158,156,169,153,154,159,161,
      157,157,151,159,166,145,155,161,161,150,
      158,164,165,157,158,160,162,165,159,155,
      162,155,154,157,165,157,154,163,162,158,
      169,155,160,164,158,159,149,154,156,155)
h <- hist(a,breaks=seq(144.5, 172.5, by = 4),col=0, border=1)

3 乱数シミュレーション.

Rには正規分布に従うデータを出力する関数 rnorm があります。

   rnorm(生成する乱数の数, 平均値, 標準偏差)

次のコードは、平均 mean=2 、標準偏差 sd=1 の正規乱数を1000個生成し、ヒストグラムを出力します。
平均を中心とし左右に 2 sd の範囲に 95% のデータが集まっていることがわかります。

x <- rnorm(1000,mean=2,sd=1)
hist(x)

  • 面積が確率を表すようにするには、prob=TRUE を付け加えます。
    縦軸は、Density(確率密度)となります。

  • dnorm(x, 平均値, 標準偏差) は理論関数を出力します。
    dnorm(x,2,1) は、平均 mean=2 、標準偏差 sd=1 の理論関数です。

  • curve は、関数のグラフを描画する関数です。
    add=True でグラフは重ね書きされます。

col で色を指定できます。次の図の赤い曲線は、理論上のグラフです。

hist(x,prob=T,col="lightblue")
curve(dnorm(x,2,1),add=TRUE,col="red")

<まとめ>

  • rnorm(乱数を出力).
  • hist(ヒストグラムの描画).
  • curve(理論曲線の描画).

これがシミュレーションの流れです。

確率変数 X が 平均 μ 標準偏差 σ の正規分布に従うとき、

   \(X\sim N(\mu,\sigma^2)\)    と書きます。

4 標準化.

rnorm(1000, 5, 2) は、平均 m = 5 、標準偏差 s = 2 のデータを1000個出力します。

hist(rnorm(1000, 5, 2) ,breaks="sturges",prob=T,col="lightblue",xlim=c(-6,6),ylim=c(0,0.4),xlab="")

  • データから平均を引けば、平均は0になります.
     
hist(rnorm(1000, 5, 2)-5 ,breaks="sturges",prob=T,col="lightblue",xlim=c(-6,6),ylim=c(0,0.4),xlab="")

  • さらに標準偏差で割れば、標準偏差は1になります.
     
hist((rnorm(1000, 5, 2)-5)/2 ,breaks="sturges",prob=T,col="lightblue",xlim=c(-6,6),ylim=c(0,0.4),xlab="")

  • add=T を付けると、重ねて表示します.
     
hist(rnorm(1000, 5, 2) ,breaks="sturges",prob=T,col="white",xlim=c(-6,6),ylim=c(0,0.4),xlab="")
hist(rnorm(1000, 5, 2)-5,prob=T,col="lightpink",add=T)
hist((rnorm(1000, 5, 2)-5)/2 ,breaks="sturges",prob=T,col="lightblue",add=T)