% Generated by roxygen2: do not edit by hand
% Please edit documentation in R/loadMatrix.R
\name{loadMatrix}
\alias{loadMatrix}
\title{Load Data and Convert to a Matrix}
\usage{
loadMatrix(
  input,
  remove_columns = NULL,
  remove_row_headings = FALSE,
  scaling = "no"
)
}
\arguments{
\item{input}{Character or in-memory dataset. A string specifying the path to a CSV file, or an in-memory
object (data frame or matrix). Argument is required.}

\item{remove_columns}{Integer, character, or vector of either.
If specified, removes the columns of the dataset indicated by positions or names.
This is useful, for example, when the first column contains
non-numeric identifiers (e.g., sample names) that should be
excluded from the analysis. Default is `NULL`.}

\item{remove_row_headings}{Deprecated, use `remove_columns = 1` instead. Logical. If `TRUE`, removes the first column of the dataset. Default is `FALSE`.}

\item{scaling}{Character. Normalization method to apply to the values in each column of the dataset. One of:
\describe{
  \item{"no"}{No scaling is applied (default).}
  \item{"simpleFeature"}{Divided by the maximum value.}
  \item{"minMax"}{Scale values to range [0, 1].}
  \item{"zScore"}{standardize values by subtracting the mean and dividing by the standard deviation.}
}}
}
\value{
A matrix with the processed data.
}
\description{
Loads data from a CSV file or an in-memory object (data frame or matrix),
optionally removes specified columns, and applies specified normalization methods
before converting the data to a matrix. In the original dataset, rows represent
observations (e.g., samples), columns represent variables (e.g., features),
and all cells (except for column headers and, if applicable, row headers)
must only contain numeric values.
}
\examples{
# Example 1: Load toy data from a CSV file
file_path <- system.file("extdata", "toy_data.csv", package = "somhca")

# Run the loadMatrix function with the mock data
myMatrix <- loadMatrix(file_path, remove_columns = 1, scaling = "minMax")

# Example 2: Load from a toy data frame
df <- data.frame(
  ID = paste0("Sample", 1:100), # Character column for row headings
  matrix(rnorm(900), nrow = 100, ncol = 9) # Numeric data
)

# Run the loadMatrix function with the mock data
myMatrix <- loadMatrix(df, remove_columns = 1, scaling = "zScore")

# Example 3: Load from a toy matrix
mat <- matrix(rnorm(900), nrow = 100, ncol = 9) # Numeric data

# Run the loadMatrix function with the mock data
myMatrix <- loadMatrix(mat, scaling = "simpleFeature")
}
