461 Views
February 25, 22
スライド概要
データサイエンス演習(R システムを使用)
https://www.kkaneko.jp/cc/rd/index.html
金子邦彦研究室ホームページ
https://www.kkaneko.jp/index.html
金子邦彦(かねこくにひこ) 福山大学・工学部・教授 ホームページ: https://www.kkaneko.jp/index.html 金子邦彦 YouTube チャンネル: https://youtube.com/user/kunihikokaneko
rd-13. 正規分布 データサイエンス演習 (R システムを使用) https://www.kkaneko.jp/de/rd/index.html 金子邦彦 1
コイン投げ • コインを投げて,裏か表を出す. けなどはない コインに仕掛 2
コイン投げでの「表の枚数」は変数 • コインが200枚あるとする 200枚を一斉に投げて,表の枚数を数える → 何度も繰り返す (例) 97, 100, 111, 96, 87, 93, 99, 99, 104, 92, 112, 98, 94, 101, 108, 98, 100, 117, 103, 100, ... 3
分布の例 • コインが200枚あるとする • 200枚を一斉に投げて,表の枚数を数える それが 起きた回数 (頻度) 表の枚数 20回投げたときの例 4
分布の例 • コインが200枚あるとする • 200枚を一斉に投げて,表の枚数を数える それが 起きた回数 (頻度) 表の枚数 100回投げたときの例 5
分布の例 • コインが200枚あるとする • 200枚を一斉に投げて,表の枚数を数える それが 起きた回数 (頻度) 表の枚数 1000回投げたときの例 6
分布の例 • コインが200枚あるとする • 200枚を一斉に投げて,表の枚数を数える それが 起きた回数 (頻度) 表の枚数 10000回投げたときの例 7
• コイン投げゲーム • コインを200枚を一斉に投げる(1回勝負) • 表の枚数が110枚以上なら 勝ち • 表の枚数が109枚以下なら 負け • この勝負に勝てそうか? 8
• コイン投げゲーム • コインを200枚を一斉に投げる(1回勝負) • 表の枚数が110枚以上なら 勝ち • 表の枚数が109枚以下なら 負け • 10000回投げてみたら, 表の枚数が110枚以上 894回 表の枚数が109枚以下 9106回 8.9パーセントくらいの 確率で勝てそう! 9
• 勝率5%のゲーム(100回に5回勝てそうな ゲーム)を作りたいとする • コイン200枚を投げて,112枚以上表立ったら勝ちゲーム それが 起きた回数 (頻度) 10000回投げてみたら, 表の枚数が112枚以上 518回 表の枚数が111枚以下 9482回 5.2パーセントくらいの 確率で勝てそう 10
4-5 母平均と母分散の活用例
今から行うことのイメージ 値が変化する何か <変数> たくさんの標本 母平均,母分散の推定値 合成データを生成し, その分布をみる 12
Rで,母平均と母分散から,データを合成 • rnorm(10, 100, sqrt(400) ) rnorm(<合成したいデータ数>,<母平均値>, sqrt(<母分散値>)) 母平均 100,母分散 400のとき ■ 合成データの生成(サイズ:10) ■ 合成データを生成し, その後,小数点以下を四捨五入(サイズ:10) round( rnorm(10, 100, sqrt(400) ) ) 小数点以下の四捨五入には round を使う 13
Rで,母平均と母分散から,データを合成 値が変化する何か <変数> たくさんの標本 母平均,母分散の推定値 母平均 100 母分散 400 合成データを生成する 元の変数と性質が同じような合成データを生成 14
Rで,母平均と母分散から,データを合成 round( rnorm(10, 100, sqrt(400) ) ) round( rnorm(10, 100, sqrt(400) ) ) round( rnorm(10, 100, sqrt(400) ) ) round( rnorm(10, 100, sqrt(400) ) ) round( rnorm(20, 100, sqrt(400) ) ) round( rnorm(30, 100, sqrt(400) ) ) 15
合成データの頻度分布(ヒストグラム) library(dplyr) library(ggplot2) d <- round( rnorm(10, 100, sqrt(400) ) ) ggplot(data_frame(d), aes(x = d)) + geom_histogram(binwidth=1) + theme_bw() ベクトルデータの 頻度分布(ヒストグラム) 16
合成データの頻度分布(ヒストグラム) 今度は 100 library(dplyr) library(ggplot2) d <- round( rnorm(100, 100, sqrt(400) ) ) ggplot(data_frame(d), aes(x = d)) + geom_histogram(binwidth=1) + theme_bw() ベクトルデータの 頻度分布(ヒストグラム) 17
合成データの頻度分布(ヒストグラム) (1/2) サイズ10の サイズ100の サイズ1000の ときの頻度分布 ときの頻度分布 ときの頻度分布 18
合成データの頻度分布(ヒストグラム) (2/2) • 母平均と母分散で,合成された合成データの頻度 分布(ヒストグラム)は,合成データのサイズを 増やすと,正規分布になる 合成データのサイズを増やすほど, 頻度分布(ヒストグラム)のカーブは 滑らかになる サイズ10000の ときの頻度分布 サイズ100000 のときの頻度分布 サイズ1000000 のときの頻度分布 19