No.22879 R 区間分割処理  【明石】 2020/01/04(Sat) 19:15

青木先生 様;

新年あけまして,おめでとうございます。

お忙しいところを失礼いたします,明石と申します。
毎々,ご丁寧なご教示をいただき,誠にありがとうございます。

新年早々ですが,青木先生にご教示いただきたいことが出てきました。
年始のお忙しいところ,お手数をおかけいたします。
何卒どうぞよろしくお願いいたします。

----------------------------------------
AIC による,ヒストグラム(度数分布表)の最適階級分割の探索
http://aoki2.si.gunma-u.ac.jp/R/AIC-Histogram.html
の入力データを用いて,ご説明します。
x <- c(28.67, 40.29, 10.61, 33.85, 36.19, 20.63, 9.64, 15.26,
15.53, 73.62, 63.29, 32.77, 32.28, 11.90, 54.16, 4.73, 24.67,
17.66, 25.84, 22.89, 15.68, 5.48, 36.41, 20.33, 44.58, 57.23,
65.89, 57.91, 2.39, 9.15, 10.27, 3.04, 12.35, 32.78, 44.23,
31.14, 6.03, 27.90, 28.73, 42.09, 3.99, 9.74, 6.85, 0.16, 9.26,
7.72, 34.42, 32.77, 6.80, 10.45, 29.80, 5.89, 13.56, 50.55, 0.51,
0.19, 7.19, 5.94, 11.24, 32.32, 15.27, 29.64, 10.03, 2.01, 13.89,
20.83, 27.49, 14.46, 8.22, 27.81, 33.65, 38.57, 8.66, 1.40,
23.97, 15.11, 63.32, 7.76, 1.58, 48.66, 44.46, 0.02, 38.12,
18.51, 101.75, 34.16, 27.99, 5.22, 1.82, 8.22, 4.89, 97.50, 2.10,
26.19, 10.11, 8.39, 25.83, 1.05, 25.63, 18.35)
最適階級の区間幅が,以下のようにマトリクスで得られました。
mx
[,1] [,2]
[1,] -0.03000 10.68895
[2,] 10.68895 37.48632
[3,] 37.48632 64.28368
[4,] 64.28368 101.80000
findInterval(x, c(-0.03000, 10.68895, 37.48632, 64.28368)) により,
入力ベクトルデータの各要素が所属する階級番号を得ることができました。
2 3 1 2 2 2 1 2 2 4 3 2 2 2 3 1 2 2 2 2 2 1 2 2 3 3 4 3 1 1 1 1 2 2
3 2 1 2 2 3 1 1 1 1 1 1 2 2 1 1 2 1 2 3 1 1 1 1 2 2 2 2 1 1 2 2 2 2
1 2 2 3 1 1 2 2 3 1 1 3 3 1 3 2 4 2 2 1 1 1 1 4 1 2 1 1 2 1 2 2
【ご教示いただきたい内容】
mxを人間が読み取り,
findInterval(x, c(-0.03000, 10.68895, 37.48632, 64.28368))
をコーディングするのではなく,
x,mxの2つを引数として渡すだけで,
findInterval(x, c(-0.03000, 10.68895, 37.48632, 64.28368))
を自動的に組み立てて,実行して,所属する階級を得ることができたら,大変に助かります。

最適階級化したいデータが多くあるので,
人手を介さないで自動処理ができたらと調べています。

eval()関数が利用できそうな気がして調べていますが,文字列の組み立てができません。

ご教示をいただけましたら大変に助かります。
新年早々,お手数をおかけいたします。
//

No.22880 Re: R 区間分割処理  【aoki】 2020/01/05(Sun) 12:34

findInterval(x, mx[,1]) だけでよいのでは?

No.22881 Re: R 区間分割処理  【明石】 2020/01/05(Sun) 16:26

青木先生 様;

新年あけまして,おめでとうございます。

お忙しいところを失礼いたします,明石と申します。

新年早々,ありがたいご教示をいただき,誠にありがとうございました。
今年もいい年になりそうな予感がしています。

eval()関数を見つけて,固執して,視野が狭くなっておりました。
//

● 「統計学関連なんでもあり」の過去ログ--- 048 の目次へジャンプ
● 「統計学関連なんでもあり」の目次へジャンプ
● 直前のページへ戻る