Learn R Programming

genio (version 1.1.2)

read_matrix: Read a numerical matrix file into an R matrix

Description

Reads a matrix file under strict assumptions that it is entirely numeric and there are no row or column names present in this file. It uses readr::read_table() to do it efficiently. Intended for outputs such as those of admixture inference approaches.

Usage

read_matrix(file, ext = "txt", verbose = TRUE)

Value

A numeric matrix without row or column names.

Arguments

file

Input file (whatever is accepted by readr::read_table()). If file as given does not exist and is missing the expected extension (see ext below), the function adds the extension and uses that path if that file exists. Additionally, the .gz extension is added automatically if the file (after the extension is added as needed) is still not found and did not already contain the .gz extension and adding it points to an existing file.

ext

The desired file extension. Ignored if file points to an existing file. Set to NA to force file to exist as-is.

verbose

If TRUE (default) function reports the path of the file being loaded (after autocompleting the extensions).

See Also

write_matrix(), the inverse function.

Examples

Run this code
# to read "data.txt", run like this:
# mat <- read_matrix("data")
# this also works
# mat <- read_matrix("data.txt")

# The following example is more awkward
# because package sample data has to be specified in this weird way:

# read an existing matrix *.txt file
file <- system.file("extdata", 'sample-Q3.txt', package = "genio", mustWork = TRUE)
mat <- read_matrix(file)
mat

# can specify without extension
file <- sub('\\.txt$', '', file) # remove extension from this path on purpose
file # verify .txt is missing
mat <- read_matrix(file) # load it anyway!
mat

Run the code above in your browser using DataLab