teratail header banner
teratail header banner
質問するログイン新規登録

回答編集履歴

3

考察を追記

2017/05/05 06:12

投稿

8524ba23
8524ba23

スコア38352

answer CHANGED
@@ -34,4 +34,5 @@
34
34
  下辺値=(n-1)*0.25番目の値= 0.75番目の値=0番目の値*0.25+1番目の値*0.75=1*0.25+2*0.75=1.75
35
35
  上辺値=(n-1)*0.75番目の値= 2.25番目の値=2番目の値*0.75+3番目の値*0.25=3*0.75+4*0.25=3.25
36
36
  ```
37
- この結果は`boxplot`の描画結果と一致します。
37
+ この結果は`boxplot`の描画結果と一致します。
38
+ 上記の考察とあなたのコメントより`boxplot`関数で描画される結果は、あなたの考える**箱ひげ図**ではないと考えます。

2

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

2017/05/05 06:12

投稿

8524ba23
8524ba23

スコア38352

answer CHANGED
@@ -17,4 +17,21 @@
17
17
  plt.boxplot(a)
18
18
  plt.show()
19
19
  ```
20
- ![箱ひげ図](baf4d6737708a351835a517a062fc0e8.png)
20
+ ![箱ひげ図](baf4d6737708a351835a517a062fc0e8.png)
21
+
22
+ #### `boxplot`での箱ひげ図について
23
+
24
+ 一般的な「箱ひげ図」は以下の値を採用するようです。
25
+ - 最小、最大、中央、第一四分位(箱の下辺)、第三四分位(箱の上辺)に位置する値を採用する。
26
+ - 上記は、数値の組の先頭からそれぞれ0,1,0.5,0.25,0.75番目の率の位置にするものとする。
27
+ - 位置(番目)が小数の場合は、その前後に位置する2値に応じた重み付き平均値を採用する(別の考えもあり)。
28
+ 参考:[四分位数の求め方といろいろな例題](http://mathtrain.jp/shibuni)
29
+ ```Python
30
+ # 数値の組[1,2,3,4] の場合。数値の個数 n=4
31
+ 最小値=(n-1)*0 番目の値= 0 番目の値=1
32
+ 最大値=(n-1)*1 番目の値= 3 番目の値=4
33
+ 中央値=(n-1)*0.5 番目の値= 1.5 番目の値=1番目の値*0.5 +2番目の値*0.5 =2*0.5 +3*0.5 =2.5
34
+ 下辺値=(n-1)*0.25番目の値= 0.75番目の値=0番目の値*0.25+1番目の値*0.75=1*0.25+2*0.75=1.75
35
+ 上辺値=(n-1)*0.75番目の値= 2.25番目の値=2番目の値*0.75+3番目の値*0.25=3*0.75+4*0.25=3.25
36
+ ```
37
+ この結果は`boxplot`の描画結果と一致します。

1

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

2017/05/05 06:11

投稿

8524ba23
8524ba23

スコア38352

answer CHANGED
@@ -6,4 +6,15 @@
6
6
 
7
7
  #### お願い
8
8
  - 回答ではありませんので、**ベストアンサーにはしないでください。**
9
- - 自力で解決できた場合は**自己回答**することを強くお勧めします。
9
+ - 自力で解決できた場合は**自己回答**することを強くお勧めします。
10
+
11
+ ##### [1,2,3,4]の描画結果
12
+ ```Python
13
+ import numpy as np
14
+ import matplotlib.pyplot as plt
15
+
16
+ a = np.array([1,2,3,4])
17
+ plt.boxplot(a)
18
+ plt.show()
19
+ ```
20
+ ![箱ひげ図](baf4d6737708a351835a517a062fc0e8.png)