Learn R Programming

metaSEM (version 1.4.0)

vec2symMat: Convert a Vector into a Symmetric Matrix

Description

It converts a vector into a symmetric matrix by filling up the elements into the lower triangle of the matrix.

Usage

vec2symMat(x, diag = TRUE, byrow = FALSE)

Value

A symmetric square matrix based on column major

Arguments

x

A vector of numerics or characters

diag

Logical. If it is TRUE (the default), the diagonals of the created matrix are replaced by elements of x; otherwise, the diagonals of the created matrix are replaced by "1".

byrow

Logical. If it is FALSE (the default), the created matrix is filled by columns; otherwise, the matrix is filled by rows.

Author

Mike W.-L. Cheung <mikewlcheung@nus.edu.sg>

See Also

matrix2bdiag

Examples

Run this code
vec2symMat(1:6)
#      [,1] [,2] [,3]
# [1,]    1    2    3
# [2,]    2    4    5
# [3,]    3    5    6

vec2symMat(1:6, diag=FALSE)
#      [,1] [,2] [,3] [,4]
# [1,]    1    1    2    3
# [2,]    1    1    4    5
# [3,]    2    4    1    6
# [4,]    3    5    6    1

vec2symMat(letters[1:6])
#      [,1] [,2] [,3]
# [1,] "a"  "b"  "c" 
# [2,] "b"  "d"  "e" 
# [3,] "c"  "e"  "f" 

Run the code above in your browser using DataLab