├── test.txt ├── var.pdf ├── var012.pdf ├── OLS_estimate.pdf ├── t-distribution.pdf ├── Reproductive_property.pdf ├── README.md └── KA2.R /test.txt: -------------------------------------------------------------------------------- 1 | test -------------------------------------------------------------------------------- /var.pdf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/HiroshiHamada/KA2/HEAD/var.pdf -------------------------------------------------------------------------------- /var012.pdf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/HiroshiHamada/KA2/HEAD/var012.pdf -------------------------------------------------------------------------------- /OLS_estimate.pdf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/HiroshiHamada/KA2/HEAD/OLS_estimate.pdf -------------------------------------------------------------------------------- /t-distribution.pdf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/HiroshiHamada/KA2/HEAD/t-distribution.pdf -------------------------------------------------------------------------------- /Reproductive_property.pdf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/HiroshiHamada/KA2/HEAD/Reproductive_property.pdf -------------------------------------------------------------------------------- /README.md: -------------------------------------------------------------------------------- 1 | # KA2 2 | 3 | # 『その問題,やっぱり数理モデルが解決します』サポートページ 4 | 5 | このリポジトリKA2では, 6 | 『その問題,数理モデルが解決します』の参考資料を公開する予定です. 7 | KAは花京院と青葉の略です. 8 | 9 | - KA2.Rは本文の計算を再現するためのコードです. 10 | - t-distribution.pdf(5日間で理解するt分布)はt分布に関する補足資料です. 11 | 12 | 各章の数学的難易度の目安とトピックの一覧です。 13 | 星☆がもっとも簡単で,☆がふえるほど相対的に難しくなります。 14 | 15 | |章 |難易度|トピック     | 16 | |:---|:---|:---| 17 | |第1 章 しっくりこない数式の読み方とは?|☆|総和記号、添え字の読み方、平均値| 18 | |第2 章 確率密度関数ってなに|☆|定義の読み方、グラフの描き方、パラメータの役割| 19 | |第3 章 確率と積分の関係とは?|☆|正規分布、測定誤差、確率密度関数のつくり方| 20 | |第4 章 モデルってなに?|☆☆|競争市場、需要量、代替財、均衡価格、独占モデル| 21 | |第5 章 競争で損をしない戦略とは?|☆☆|複占モデル、ゲーム理論、ナッシュ均衡| 22 | |第6 章 自分でモデルをつくる方法|☆|モデルのつくり方、モデルの一般化、モデルで自由に遊ぶ| 23 | |第7 章 先手が有利な条件とは?|☆☆|後ろ向き帰納法、展開形ゲーム、情報集合| 24 | |第8 章 競争に負けない価格設定とは?|☆☆|代替性、モデルのバリエーション、検証| 25 | |第9 章 売り上げを予測するには?|☆☆|回帰分析、最小2乗法、微分、偏微分| 26 | |第10 章 確率モデルでデータを分析するには?|☆☆☆|確率変数、OLS推定量、正規分布の再生性| 27 | |第11 章 仮説検定ってどうやるの?|☆☆☆|推定量の確率分布、t分布、解釈の注意点| 28 | |第12 章 観測できない要因の影響を予想するには?|☆☆|欠落変数バイアス、期待値、不偏推定量、固定効果| 29 | |第13 章 アプリの利用者数を予測するには?|☆☆|微分方程式、置換積分法、変数分離形| 30 | |第14 章 広告で販売数を増やすには?|☆☆☆|1階線形微分方程式、積分因子| 31 | 32 | -------------------------------------------------------------------------------- /KA2.R: -------------------------------------------------------------------------------- 1 | # このRコードは 2 | # 浜田2020『その問題,やっぱり数理モデルが解決します』ベレ出版 3 | # の計算を再現するためのコードです. 4 | 5 | library("ggplot2") 6 | library("MASS") 7 | 8 | ## 2章 ##################### 9 | 10 | # p.44 11 | curve(dnorm(x),-4,4) 12 | 13 | # p.47-48  14 | # 本文内の図はMathematicaで作成したので見た目が異なります 15 | 16 | # 1つずつplot 17 | curve(dnorm(x,mean=0,sd=1),-4,4) 18 | curve(dnorm(x,mean=1,sd=1),-4,4) 19 | curve(dnorm(x,mean=2,sd=1),-4,4) 20 | 21 | # 重ねてplot 22 | # 本文内の図はMathematicaで作成したので見た目が異なります 23 | curve(dnorm(x,0,1),-4,4,lty=1,ylab="f(x)") 24 | curve(dnorm(x,1,1),-4,4,lty=2,add=TRUE,ylab="") 25 | curve(dnorm(x,2,1),-4,4,lty=3,add=TRUE,ylab="") 26 | legend("topleft",legend=c("mean=0","mean=1","mean=2"),lty=c(1,2,3)) 27 | 28 | 29 | 30 | # p.50 31 | 32 | curve(dnorm(x,mean=0,sd=0.75),-4,4) 33 | curve(dnorm(x,mean=0,sd=1),-4,4) 34 | curve(dnorm(x,mean=0,sd=1.5),-4,4) 35 | 36 | 37 | # 重ねてplot 38 | # 本文内の図はMathematicaで作成したので見た目が異なります 39 | curve(dnorm(x,0,0.75),-4,4,lty=1,ylab="f(x)") 40 | curve(dnorm(x,0,1),-4,4,lty=2,add=TRUE,ylab="") 41 | curve(dnorm(x,0,1.5),-4,4,lty=3,add=TRUE,ylab="") 42 | legend("topleft",legend=c("sd=0.75","sd=1","sd=1.5"),lty=c(1,2,3)) 43 | 44 | # 参考.ggplot2パッケージを使った例 45 | 46 | x <- seq(-4,5,0.1) 47 | m0 <- dnorm(x,0,1) 48 | m1 <- dnorm(x,1,1) 49 | data <- data.frame(x=x,y1=m0,y2=m1) 50 | ggplot(data,aes(x))+ 51 | geom_line(aes(y=y1))+ 52 | geom_line(aes(y=y2),linetype="dashed") 53 | 54 | 55 | 56 | ## 3章 ##################### 57 | 58 | # p.61 59 | f <- function(x){dnorm(x,mean=0,sd=0.1)} 60 | integrate(f, 0, 0.15) 61 | 62 | # p.66 63 | integrate(f, -0.15, 0.15) 64 | 65 | # p.67 66 | integrate(f, -0.4, 0.4) 67 | 68 | 69 | # p.69 花京院分布 70 | f <- function(x){exp(-(log(x)^2))} 71 | curve(f(x),0,10,lty=1,ylab="f(x)") 72 | 73 | # 面積の計算 74 | integrate(f, 0, 10) 75 | 76 | 77 | 78 | ## 9章 ##################### 79 | 80 | x=c(1,2,3,4) 81 | y=c(3,5,6,4) 82 | 83 | # p.202-203 OLS推定値の計算 84 | 85 | # b^ の分子 86 | sum((x-mean(x))*(y-mean(y))) 87 | 88 | # b^ の分母 89 | sum((x-mean(x))^2) 90 | 91 | # b^ 92 | b=sum((x-mean(x))*(y-mean(y)))/sum((x-mean(x))^2) 93 | b 94 | 95 | # a^ 96 | a=mean(y)-b*mean(x) 97 | a 98 | 99 | 100 | 101 | 102 | ## 10章 ##################### 103 | 104 | # 2集団の合併(混合分布のpdf) 105 | f <- function(x){0.5*dnorm(x,1,1)+0.5*dnorm(x,5,1)} 106 | curve(f(x),-2,8,lty=1,ylab="f(x)") 107 | 108 | # 2集団の合併 109 | x=rnorm(1000,1,1) 110 | y=rnorm(1000,5,1) 111 | z=c(x,y)#2集団を合併 112 | hist(z,breaks =15,probability = T) 113 | curve(f(x),-2,8,lty=1,add=T, ylab="f(x)") 114 | 115 | # 2集団の和の分布,X~N(1,1), Y~N(5,1), X+Yの分布 116 | x=rnorm(1000,1,1) 117 | y=rnorm(1000,5,1) 118 | z=x+y #実現値を足す 119 | hist(z,breaks =15,probability = T) 120 | curve(dnorm(x,6,1),1,11,lty=3,add=TRUE,ylab="",xlab ="") 121 | 122 | 123 | 124 | ## 11章 ##################### 125 | 126 | # 乱数を使っているので本文とは異なる結果が出ます 127 | # 繰り返し計算すると, 本文で示した例と同様の例が出力されます 128 | 129 | n <- 1000 130 | data1<-data.frame(x1=rnorm(n),x2=rnorm(n), 131 | x3=rnorm(n),x4=rnorm(n), 132 | x5=rnorm(n),x6=rnorm(n), 133 | x7=rnorm(n),x8=rnorm(n), 134 | x9=rnorm(n),x10=rnorm(n),y=rnorm(n)) 135 | 136 | out<-lm(y~x1+x2+x3+x4+x5+x6+x7+x8+x9+x10,data=data1) #OLS推定 137 | summary(out)#結果出力 138 | 139 | 140 | 141 | ## 12章 ##################### 142 | # p.253--p.255 143 | # 乱数を使っているので本文とは多少異なる結果が出ます 144 | # 売上y=b1*x店員数+b2*z他店の売り上げ+U 145 | 146 | omitted<-function(n,sd,r,b1,b2){ 147 | mu <- c(0,0) #平均ベクトルの定義 148 | cov <- matrix(c(1, r, r, 1), 2, 2)#分散共分散行列の定義 149 | exv<-mvrnorm(n, mu, cov)#説明変数用数n個を生成 150 | u<-rnorm(n, mean = 0, sd)#攪乱項の生成 151 | y<- b1*exv[,1]+ b2*exv[,2]+u #真関数によるデータ生成 152 | data1<-data.frame(x=exv[,1],z=exv[,2],y)#data.frameを使って人工データを定義 153 | out1<-lm(y~x,data=data1)#zが欠落した推定 154 | out2<-lm(y~x+z,data=data1)#欠落変数がない推定 155 | print(summary(out1))#分析結果の出力 156 | print(summary(out2)) 157 | print(cor(exv[,1],exv[,2]))#相関係数確認 158 | } 159 | 160 | #omitted(n,sd,r,b1,b2) 161 | omitted(1000,1,0.8,0.5,-2) 162 | --------------------------------------------------------------------------------