Learn R Programming

GPArotation (version 2022.10-2)

Random.Start: Generate a Random Orthogonal Rotation

Description

Random orthogonal rotation to use as Tmat matrix to start GPForth or GPFoblq.

Usage

Random.Start(k)

Value

An orthogonal matrix.

Arguments

k

An integer indicating the dimension of the square matrix.

Author

Coen A. Bernaards and Robert I. Jennrich with some R modifications by Paul Gilbert

Details

The random start function produces an orthogonal matrix with columns of length one based on the QR decompostion.

See Also

GPForth, GPFoblq, oblimin

Examples

Run this code
   Global.min <- function(A,method,B=10){
      fv <- rep(0,B)
      seeds <- sample(1e+7, B)
      for(i in 1:B){
    	cat(i," ")
    	set.seed(seeds[i])
    	gpout <- GPFoblq(A=A, Random.Start(ncol(A)), method=method)
    	dtab <- dim(gpout$Table)
    	fv[i] <- gpout$Table[dtab[1],2]
    	cat(fv[i], "\n")
      }
      cat("Min is ",min(fv),"\n")
      set.seed(seeds[order(fv)[1]])
      ans <- GPFoblq(A=A, Random.Start(ncol(A)), method=method)
      ans
      }

   data("Thurstone", package="GPArotation")

   Global.min(box26,"simplimax",10)
   

Run the code above in your browser using DataLab