突然感觉R语言,有些地方比matble还简洁,但是我还是更喜欢matble,更直接些
# Normalize a matrix
# Args:
# m: the matix
# L: by rows (L=1) or columns (L=2)
# Returns:
# The normalized matrix
#标准化矩阵
##参数:
#m :矩阵
#L :按行(L = 1)或列(L = 2)
#返回:标准化矩阵
# 先对矩阵X,进行归一化处理,得到新的X',然后求其相似矩阵 S=t(X')X'. R语言中t(表示转置)
NormalizeWH <- function(m, L = 2) {m2 <- apply(m, L, innp <- function(x) {
return (x / sqrt(sum(x^2)))
})
mtmn <- t(m2) %*% m2