x <- diag(2)
df <- 6
scale <- matrix(c(1, -0.3, -0.3, 0.8), ncol = 2)
# compute density
dwishart(x = x, df = df, scale = scale)
dwishart(x = x, df = df, scale = scale, log = TRUE)
dwishart(x = x, df = df, scale = scale, inv = TRUE)
# sample
rwishart(df = df, scale = scale)
rwishart(df = df, scale = scale, inv = TRUE)
# expectation of Wishart is df * scale
apply(rwishart(n = 100, df = df, scale = scale), 1:2, mean)
df * scale
# expectation of inverse Wishart is scale / (df - p - 1)
apply(rwishart(n = 100, df = df, scale = scale, inv = TRUE), 1:2, mean)
scale / (df - 2 - 1)
Run the code above in your browser using DataLab