My Notes

統計学とかR(R言語)とかPython3の覚え書きとか走り書きとか。 座右の銘にしたい: All work and no play makes Jack a dull boy.

『とある弁当屋の統計技師(データサイエンティスト) --データ分析のはじめかた--』の第1章をR(R言語)で

Rコード

# 第1章 p.14~
# 基本的に書籍に載っているところだけ。
# サポートWebサイトや"Ranko"パッケージは使用していない
# そもそも、"> install.packages("Ranko")
#          Warning in install.packages :
#          package ‘Ranko’ is not available (for R version 3.2.2)"
# となる。

一週間の売上個数 <- data.frame(曜日 = c("月", "火", "水", "木", "金", "土", "日"),
                            個数 = c(181, 194, 265, 206, 208, 272, 221))

一週間の売上個数


summary(一週間の売上個数)


# 平均
sum(一週間の売上個数$個数) / length(一週間の売上個数$個数)
mean(一週間の売上個数$個数)


# 中央値
median(一週間の売上個数$個数)


# sort
sort(一週間の売上個数$個数)


# 中央値
median(一週間の売上個数$個数)


一日の売上個数_1ヶ月分 <- data.frame(正規屋 = c(181, 194, 265, 206, 208, 272,
                                            221, 152, 176, 185, 252, 217,
                                            219, 207, 181, 274, 223, 124,
                                            231, 184, 160, 194, 162, 174,
                                            178, 136, 237, 209, 157, 253),
                                がんま亭 = c(207, 204, 209, 209, 209, 208,
                                            208, 205, 203, 203, 202, 204,
                                            199, 216, 211, 199, 203, 203,
                                            209, 205, 206, 205, 205, 212,
                                            204, 213, 197, 208, 206, 206))


一日の売上個数_1ヶ月分


summary(一日の売上個数_1ヶ月分)


# 中央値
median(一日の売上個数_1ヶ月分$正規屋)
median(一日の売上個数_1ヶ月分$がんま亭)


# 箱ヒゲ図
# 文字化けする場合
par(family = "Osaka")
boxplot(一日の売上個数_1ヶ月分, ylab = "1週間の売上")


# オムライス
# 箱ヒゲ図のヒゲの位置の計算
# 四分位範囲
オムライスの四分位範囲 <- 9.75 - 7
オムライスの四分位範囲

オムライスの第3四分位範囲 <- 9.75

上側ヒゲ <- オムライスの第3四分位範囲 + (オムライスの四分位範囲 * 1.5)
上側ヒゲ
floor(上側ヒゲ)

オムライスの第1四分位範囲 <- 7
下側ヒゲ <- オムライスの第1四分位範囲 - (オムライスの四分位範囲 * 1.5)
下側ヒゲ
ceiling(下側ヒゲ)

R Console

> # 第1章 p.14~
> # 基本的に書籍に載っているところだけ。
> # サポートWebサイトや"Ranko"パッケージは使用していない
> # そもそも、"> install.packages("Ranko")
> #          Warning in install.packages :
> #          package ‘Ranko’ is not available (for R version 3.2.2)"
> # となる。
> 
> 一週間の売上個数 <- data.frame(曜日 = c("月", "火", "水", "木", "金", "土", "日"),
+                             個数 = c(181, 194, 265, 206, 208, 272, 221))
> 
> 一週間の売上個数
  曜日 個数
1181
2194
3265
4206
5208
6272
7221
> 
> 
> summary(一週間の売上個数)
 曜日        個数    
 火:1   Min.   :181:1   1st Qu.:200:1   Median :208:1   Mean   :221:1   3rd Qu.:243:1   Max.   :272:1                
> 
> 
> # 平均
> sum(一週間の売上個数$個数) / length(一週間の売上個数$個数)
[1] 221
> mean(一週間の売上個数$個数)
[1] 221
> 
> 
> # 中央値
> median(一週間の売上個数$個数)
[1] 208
> 
> 
> # sort
> sort(一週間の売上個数$個数)
[1] 181 194 206 208 221 265 272
> 
> 
> # 中央値
> median(一週間の売上個数$個数)
[1] 208
> 
> 
> 一日の売上個数_1ヶ月分 <- data.frame(正規屋 = c(181, 194, 265, 206, 208, 272,
+                                             221, 152, 176, 185, 252, 217,
+                                             219, 207, 181, 274, 223, 124,
+                                             231, 184, 160, 194, 162, 174,
+                                             178, 136, 237, 209, 157, 253),
+                                 がんま亭 = c(207, 204, 209, 209, 209, 208,
+                                             208, 205, 203, 203, 202, 204,
+                                             199, 216, 211, 199, 203, 203,
+                                             209, 205, 206, 205, 205, 212,
+                                             204, 213, 197, 208, 206, 206))
> 
> 
> 一日の売上個数_1ヶ月分
   正規屋 がんま亭
1     181      207
2     194      204
3     265      209
4     206      209
5     208      209
6     272      208
7     221      208
8     152      205
9     176      203
10    185      203
11    252      202
12    217      204
13    219      199
14    207      216
15    181      211
16    274      199
17    223      203
18    124      203
19    231      209
20    184      205
21    160      206
22    194      205
23    162      205
24    174      212
25    178      204
26    136      213
27    237      197
28    209      208
29    157      206
30    253      206
> 
> 
> summary(一日の売上個数_1ヶ月分)
     正規屋         がんま亭    
 Min.   :124.0   Min.   :197.0  
 1st Qu.:176.5   1st Qu.:203.2  
 Median :200.0   Median :205.5  
 Mean   :201.1   Mean   :205.9  
 3rd Qu.:222.5   3rd Qu.:208.8  
 Max.   :274.0   Max.   :216.0  
> 
> 
> # 中央値
> median(一日の売上個数_1ヶ月分$正規屋)
[1] 200
> median(一日の売上個数_1ヶ月分$がんま亭)
[1] 205.5
> 
> 
> # 箱ヒゲ図
> # 文字化けする場合
> par(family = "Osaka")
> boxplot(一日の売上個数_1ヶ月分, ylab = "1週間の売上")
> 
> 
> # オムライス
> # 箱ヒゲ図のヒゲの位置の計算
> # 四分位範囲
> オムライスの四分位範囲 <- 9.75 - 7
> オムライスの四分位範囲
[1] 2.75
> 
> オムライスの第3四分位範囲 <- 9.75
> 
> 上側ヒゲ <- オムライスの第3四分位範囲 + (オムライスの四分位範囲 * 1.5)
> 上側ヒゲ
[1] 13.875
> floor(上側ヒゲ)
[1] 13
> 
> オムライスの第1四分位範囲 <- 7
> 下側ヒゲ <- オムライスの第1四分位範囲 - (オムライスの四分位範囲 * 1.5)
> 下側ヒゲ
[1] 2.875
> ceiling(下側ヒゲ)
[1] 3

箱ヒゲ図のスクリーンショット

f:id:my_notes:20170531094401p:plain

参考文献