rbmf.matrix.gibbs(rstiefel)
rbmf.matrix.gibbs()所属R语言包:rstiefel
Gibbs Sampling for the Matrix-variate Bingham-von Mises-Fisher Distribution.
Gibbs采样的矩阵变量宾厄姆·冯·米塞斯Fisher分布。
译者:生物统计家园网 机器人LoveR
描述----------Description----------
Simulate a random orthonormal matrix from the Bingham distribution using Gibbs sampling.
模拟的Bingham分布Gibbs抽样的随机正交矩阵。
用法----------Usage----------
rbmf.matrix.gibbs(A, B, C, X)
参数----------Arguments----------
参数:A
a symmetric matrix.
一个对称矩阵。
参数:B
a diagonal matrix with decreasing entries.
下降条目的对角矩阵。
参数:C
a matrix with the same dimension as X.
作为X具有相同的维数的矩阵
参数:X
the current value of the random orthonormal matrix.
的当前值的随机正交矩阵。
值----------Value----------
a new value of the matrix X obtained by Gibbs sampling.
一个新的矩阵XGibbs抽样获得。
注意----------Note----------
This provides one Gibbs scan. The function should be used iteratively.
这提供了1吉布斯扫描。应反复使用的功能。
(作者)----------Author(s)----------
Peter Hoff
参考文献----------References----------
实例----------Examples----------
## The function is currently defined as[#功能目前被定义为]
function (A, B, C, X)
{
m <- dim(X)[1]
R <- dim(X)[2]
if (m > R) {
for (r in sample(seq(1, R, length = R))) {
N <- NullC(X[, -r])
An <- B[r, r] * t(N) %*% (A) %*% N
cn <- t(N) %*% C[, r]
X[, r] <- N %*% rbmf.vector.gibbs(An, cn, t(N) %*%
X[, r])
}
}
if (m == R) {
for (s in seq(1, R, length = R)) {
r <- sort(sample(seq(1, R, length = R), 2))
N <- NullC(X[, -r])
An <- t(N) %*% A %*% N
Cn <- t(N) %*% C[, r]
X[, r] <- N %*% rbmf.O2(An, B[r, r], Cn)
}
}
X
}
转载请注明:出自 生物统计家园网(http://www.biostatistic.net)。
注:
注1:为了方便大家学习,本文档为生物统计家园网机器人LoveR翻译而成,仅供个人R语言学习参考使用,生物统计家园保留版权。
注2:由于是机器人自动翻译,难免有不准确之处,使用时仔细对照中、英文内容进行反复理解,可以帮助R语言的学习。
注3:如遇到不准确之处,请在本贴的后面进行回帖,我们会逐渐进行修订。
|