在R中,将向量缩放到单位向量的最简单方法是什么?
例如,假设
>vec
[1] 1 0 2 1
Run Code Online (Sandbox Code Playgroud)
和
>vec / sqrt(sum(vec^2))
[1] 0.4082483 0.0000000 0.8164966 0.4082483
Run Code Online (Sandbox Code Playgroud)
是它的单位向量.
R中有一些内置函数吗?
小智 7
你可以让自己成为一个功能:
scalar1 <- function(x) {x / sqrt(sum(x^2))}
Run Code Online (Sandbox Code Playgroud)
现在只需使用:
> scalar1(vec)
[1] 0.4082483 0.0000000 0.8164966 0.4082483
Run Code Online (Sandbox Code Playgroud)