数値のベクトルを与えられ、各値に対応する標準単位を持つ別のベクトルを返す関数はありますか?
ここで、標準単位:平均から値が+または-であるSDの数
例:
x <- c(1,3,4,5,7) # note: mean = 4, sd = 2
foo(x)
[1] -1.5 -0.5 0.0 0.5 1.5
この架空の「foo」関数はすでにパッケージに含まれていますか?
数値のベクトルを与えられ、各値に対応する標準単位を持つ別のベクトルを返す関数はありますか?
ここで、標準単位:平均から値が+または-であるSDの数
例:
x <- c(1,3,4,5,7) # note: mean = 4, sd = 2
foo(x)
[1] -1.5 -0.5 0.0 0.5 1.5
この架空の「foo」関数はすでにパッケージに含まれていますか?
はい、scale()
:
x <- c(1,3,4,5,7)
scale(x)
お探しの機能はscale
.
scale(x)
[,1]
[1,] -1.3416408
[2,] -0.4472136
[3,] 0.0000000
[4,] 0.4472136
[5,] 1.3416408
attr(,"scaled:center")
[1] 4
attr(,"scaled:scale")
[1] 2.236068
回答は、質問に投稿したものと同じではないことに注意してください。その理由は、x の標準偏差が実際には 2 ではなく 2.23 であるためです。
sd(x)
[1] 2.236068
または、ここでいくつかの微妙な点が欠けています(x-mean(x))/sd(x)
か?