R/matrix.util.R

Defines functions StackDiag duplicSumDirect duplicMat SumDirect

SumDirect <- function(m1, m2){
	m1 <-as.matrix(m1)
	m2 <-as.matrix(m2)
	
	topright <- matrix(0.0, nrow(m1), ncol(m2))
#		colnames(topright) <- colnames(m2)
	lowleft <- matrix(0.0, nrow(m2), ncol(m1))
	return( rbind(cbind(m1, topright), cbind(lowleft, m2)))
}

"%sd%" <- function( x, y )
{
	return( SumDirect( x, y ) )
}


duplicMat <- function(m, n){
	dm <-NULL
	for(i in 1:n){
		dm <- cbind(dm, m)
	}
	dm
}

duplicSumDirect <- function(m, n){
	m <- as.matrix(m)
	dm <-m
	if(n> 1){
		for(i in 2:n){
			dm <- dm %sd% m
		}
	}
	dm
}


StackDiag <- function(vect, n){
	dm <-NULL
	for(i in 1:length(vect)){
		dm <- rbind(dm, diag(vect[i],n))
	}
	dm
}

Try the flexrsurv package in your browser

Any scripts or data that you put into this service are public.

flexrsurv documentation built on June 7, 2023, 5:09 p.m.