回答編集履歴

3

考察を追記

2017/05/05 06:12

投稿

can110
can110

スコア38266

test CHANGED
@@ -71,3 +71,5 @@
71
71
  ```
72
72
 
73
73
  この結果は`boxplot`の描画結果と一致します。
74
+
75
+ 上記の考察とあなたのコメントより`boxplot`関数で描画される結果は、あなたの考える**箱ひげ図**ではないと考えます。

2

箱ひげ図のy位置について追記

2017/05/05 06:12

投稿

can110
can110

スコア38266

test CHANGED
@@ -37,3 +37,37 @@
37
37
  ```
38
38
 
39
39
  ![箱ひげ図](baf4d6737708a351835a517a062fc0e8.png)
40
+
41
+
42
+
43
+ #### `boxplot`での箱ひげ図について
44
+
45
+
46
+
47
+ 一般的な「箱ひげ図」は以下の値を採用するようです。
48
+
49
+ - 最小、最大、中央、第一四分位(箱の下辺)、第三四分位(箱の上辺)に位置する値を採用する。
50
+
51
+ - 上記は、数値の組の先頭からそれぞれ0,1,0.5,0.25,0.75番目の率の位置にするものとする。
52
+
53
+ - 位置(番目)が小数の場合は、その前後に位置する2値に応じた重み付き平均値を採用する(別の考えもあり)。
54
+
55
+ 参考:[四分位数の求め方といろいろな例題](http://mathtrain.jp/shibuni)
56
+
57
+ ```Python
58
+
59
+ # 数値の組[1,2,3,4] の場合。数値の個数 n=4
60
+
61
+ 最小値=(n-1)*0 番目の値= 0 番目の値=1
62
+
63
+ 最大値=(n-1)*1 番目の値= 3 番目の値=4
64
+
65
+ 中央値=(n-1)*0.5 番目の値= 1.5 番目の値=1番目の値*0.5 +2番目の値*0.5 =2*0.5 +3*0.5 =2.5
66
+
67
+ 下辺値=(n-1)*0.25番目の値= 0.75番目の値=0番目の値*0.25+1番目の値*0.75=1*0.25+2*0.75=1.75
68
+
69
+ 上辺値=(n-1)*0.75番目の値= 2.25番目の値=2番目の値*0.75+3番目の値*0.25=3*0.75+4*0.25=3.25
70
+
71
+ ```
72
+
73
+ この結果は`boxplot`の描画結果と一致します。

1

箱ひげ図の描画結果を追記

2017/05/05 06:11

投稿

can110
can110

スコア38266

test CHANGED
@@ -15,3 +15,25 @@
15
15
  - 回答ではありませんので、**ベストアンサーにはしないでください。**
16
16
 
17
17
  - 自力で解決できた場合は**自己回答**することを強くお勧めします。
18
+
19
+
20
+
21
+ ##### [1,2,3,4]の描画結果
22
+
23
+ ```Python
24
+
25
+ import numpy as np
26
+
27
+ import matplotlib.pyplot as plt
28
+
29
+
30
+
31
+ a = np.array([1,2,3,4])
32
+
33
+ plt.boxplot(a)
34
+
35
+ plt.show()
36
+
37
+ ```
38
+
39
+ ![箱ひげ図](baf4d6737708a351835a517a062fc0e8.png)