我知道A&A; A将给出对称的正定矩阵。但是如何在R中生成对称的随机矩阵,但不一定是正定的?
答案 0 :(得分:4)
细节当然取决于您希望矩阵元素具有什么样的分布,但是一旦您确定了这一点,您就可以适应以下内容:
f <- function(n) {
m <- matrix(sample(1:20, n^2, replace=TRUE), nrow=n)
m[lower.tri(m)] <- t(m)[lower.tri(m)]
m
}
## Try it out
f(2)
# [,1] [,2]
# [1,] 9 13
# [2,] 13 15
f(3)
# [,1] [,2] [,3]
# [1,] 1 8 3
# [2,] 8 13 5
# [3,] 3 5 14
为了便于使用,您可以在函数中包含这样的代码,如下所示:
modelBuilder.Entity<PlayerCharacter>()
.HasIndex("Name", "RealmId")
.IsUnique()
.HasFilter("Discriminator = 'PlayerCharacter'"); // <--