2

正規分布から 25 個の正規サンプルを生成したいと考えています。これらすべてのサンプルを個別のエンティティとして持たないインテリジェントな方法でこれを行うことを検討しています。

これは、その部分のこれまでのコードです

data <- replicate(25, rnorm(100))

これまでのところ、これは 100 個のサンプルのうち 25 個を生成するものです。データの平均値と標準偏差を抽出する場合、値は明らかにデータ セット全体のものです。

だから私の質問は、これをどのように分解しmeansd25個のサンプルのそれぞれについて決定するのですか?

4

2 に答える 2

2

の良い代替手段apply(x, 2, mean)は ですがcolMeans(x)、そのような代替手段はありませんapply(x, 2, sd):( しかし、apply 関数を使用して、平均と標準偏差の両方を 1 回のショットで取得することもできます。やってみましょう:

set.seed(42)
x <- replicate(25, rnorm(100))

Stats <- t(apply(x, 2, function(x) c(Mean=mean(x), Sd=sd(x))))
Stats
              Mean        Sd
 [1,]  0.032514816 1.0413570
 [2,] -0.087483707 0.9041735
 [3,] -0.010368172 1.0170123
 [4,]  0.032936464 0.8761978
 [5,] -0.117830506 1.0199916
 [6,]  0.002363510 1.0633145
 [7,] -0.086747228 0.9755756
 [8,] -0.169291497 0.8830939
 [9,]  0.061457015 1.0377577
[10,]  0.084205039 1.1804565
[11,] -0.129164759 1.0080920
[12,]  0.039991367 0.9814254
[13,]  0.078980115 0.9719501
[14,] -0.148572682 0.9125126
[15,] -0.048566771 0.9562642
[16,]  0.006789862 1.0347380
[17,]  0.274102604 1.0212837
[18,] -0.113169899 0.9988576
[19,]  0.151418057 0.9830082
[20,] -0.164987838 0.9348188
[21,] -0.035644377 1.0214245
[22,] -0.041569005 1.0159495
[23,]  0.051384229 1.0944096
[24,]  0.073521001 0.9084400
[25,]  0.021893835 0.9438906
于 2012-07-09T13:57:16.463 に答える
0

apply要約を一掃するために使用します。

set.seed(42)
x <- replicate(25, rnorm(100))

データは列方向の行列であるためapply、関数を 2 番目の次元にする必要があります。

apply(x, 2, mean)
 [1]  0.032514816 -0.087483707 -0.010368172  0.032936464
 [5] -0.117830506  0.002363510 -0.086747228 -0.169291497
 [9]  0.061457015  0.084205039 -0.129164759  0.039991367
[13]  0.078980115 -0.148572682 -0.048566771  0.006789862
[17]  0.274102604 -0.113169899  0.151418057 -0.164987838
[21] -0.035644377 -0.041569005  0.051384229  0.073521001
[25]  0.021893835


apply(x, 2, sd)
 [1] 1.0413570 0.9041735 1.0170123 0.8761978 1.0199916
 [6] 1.0633145 0.9755756 0.8830939 1.0377577 1.1804565
[11] 1.0080920 0.9814254 0.9719501 0.9125126 0.9562642
[16] 1.0347380 1.0212837 0.9988576 0.9830082 0.9348188
[21] 1.0214245 1.0159495 1.0944096 0.9084400 0.9438906
于 2012-07-09T12:37:37.953 に答える