snpMatrix (version 1.19.24)

snp.cbind: Bind together two or more snp.matrix objects

Description

These functions bind together two or more objects of class "snp.matrix" or "X.snp.matrix".

Usage

snp.cbind(...)
snp.rbind(...)

Arguments

...
Objects of class "snp.matrix" or "X.snp.matrix".

Value

  • A new matrix, of the same type as the input matrices.

Details

These functions reproduce the action of the standard functions cbind and rbind. These are constrained to work by recursive calls to the generic functions cbind2 and rbind2 which take just two arguments. This is somewhat inefficient in both time and memory use when binding more than two objects, so the functions snp.cbind and snp.rbind, which take multiple arguments, are also supplied. When matrices are bound together by column, row names must be identical, column names must not be duplicated and, for objects of class X.snp.matrix the contents of the Female slot much match. When matrices are bound by row, column names must be identical. and duplications of row names generate warnings.

See Also

cbind, rbind

Examples

data(testdata)
# subsetting ( Autosomes[c(1:9,11:19,21:29),] ) is quicker. this is just for illustrating
# rbind and cbind
first <- Autosomes[1:9,]
second <- Autosomes[11:19,]
third <- Autosomes[21:29,]
result1 <- rbind(first, second, third)
result2 <- snp.rbind(first, second, third)
all.equal(result1, result2)

result3 <- Autosomes[c(1:9,11:19,21:29),]
all.equal(result1, result3)

first <- Autosomes[,1:9]
second <- Autosomes[,11:19]
third <- Autosomes[,21:29]
result1 <- cbind(first, second, third)
result2 <- snp.cbind(first, second, third)
all.equal(result1, result2)

result3 <- Autosomes[,c(1:9,11:19,21:29)]
all.equal(result1, result3)

first <- Xchromosome[1:9,]
second <- Xchromosome[11:19,]
third <- Xchromosome[21:29,]
result1 <- rbind(first, second, third)
result2 <- snp.rbind(first, second, third)
all.equal(result1, result2)

result3 <- Xchromosome[c(1:9,11:19,21:29),]
all.equal(result1, result3)

first <- Xchromosome[,1:9]
second <- Xchromosome[,11:19]
third <- Xchromosome[,21:29]
result1 <- cbind(first, second, third)
result2 <- snp.cbind(first, second, third)
all.equal(result1, result2)

result3 <- Xchromosome[,c(1:9,11:19,21:29)]
all.equal(result1, result3)