본문으로 건너뛰기
cccskills
무료GitHub에 공개

bioconductor-tdbasedufeadv

This is an advanced version of TDbasedUFE, which is a comprehensive package to perform Tensor decomposition based unsupervised feature extraction. In contrast to TDbasedUFE which can perform simple the feature selection and the multiomics analyses, this package can perform more complicated and advanced features, but they are not so popularly required. Only users who require more specific features can make use of its functionality.

한국어 요약은 준비 중입니다. 원문 설명을 표시하고 있습니다.

설치 방법 보기

포함된 파일(1)

  • SKILL.md7.0 KB

SKILL.md(원문)

설치하기 전에 에이전트에게 전달되는 지시 내용을 확인할 수 있습니다.

TDbasedUFEadv

Workflows

Standard Workflow

Integrate two omics datasets sharing the same features using memory-efficient SVD with partial summation.

library(TDbasedUFEadv)
library(RTCGA.rnaseq)

# Prepare drug and disease expression datasets
Cancer_cell_lines <- list(ACC.rnaseq, BLCA.rnaseq, BRCA.rnaseq, CESC.rnaseq)
Drug_and_Disease <- prepareexpDrugandDisease(Cancer_cell_lines)
expDrug <- Drug_and_Disease$expDrug
expDisease <- Drug_and_Disease$expDisease

# Compute SVD on the two matrices
SVD <- computeSVD(exprs(expDrug), exprs(expDisease))

# Generate the matrix product and prepare the tensor
Z <- t(exprs(expDrug)) %*% exprs(expDisease)
sample <- outer(
  colnames(expDrug),
  colnames(expDisease),
  function(x, y) { paste(x, y) }
)
Z <- PrepareSummarizedExperimentTensor(
  sample = sample,
  feature = rownames(expDrug),
  value = Z
)

Inputs are two expression matrices sharing features; output is a SummarizedExperiment-like tensor and SVD results.

Multi Omics Sharing Features

Integrate multiple omics datasets sharing the same features but having different samples using projection-based SVD and HOSVD.

library(TDbasedUFEadv)
library(RTCGA.rnaseq)
library(RTCGA.clinical)

# Prepare a list of matrices sharing features
Multi <- list(
  BLCA.rnaseq[seq_len(100), 1 + seq_len(1000)],
  BRCA.rnaseq[seq_len(100), 1 + seq_len(1000)],
  CESC.rnaseq[seq_len(100), 1 + seq_len(1000)],
  COAD.rnaseq[seq_len(100), 1 + seq_len(1000)]
)

# Prepare a tensor from the list of matrices
Z <- prepareTensorfromList(Multi, 10L)

# Permute the tensor modes to align features
Z <- aperm(Z, c(2, 1, 3))

# Wrap the tensor using PrepareSummarizedExperimentTensor
Clinical <- list(BLCA.clinical, BRCA.clinical, CESC.clinical, COAD.clinical)
Multi_sample <- list(
  BLCA.rnaseq[seq_len(100), 1, drop = FALSE],
  BRCA.rnaseq[seq_len(100), 1, drop = FALSE],
  CESC.rnaseq[seq_len(100), 1, drop = FALSE],
  COAD.rnaseq[seq_len(100), 1, drop = FALSE]
)
ID_column_of_Multi_sample <- c(770, 1482, 773, 791)
ID_column_of_Clinical <- c(20, 20, 12, 14)

Z <- PrepareSummarizedExperimentTensor(
  feature = colnames(ACC.rnaseq)[1 + seq_len(1000)],
  sample = array("", 1),
  value = Z,
  sampleData = prepareCondTCGA(
    Multi_sample,
    Clinical,
    ID_column_of_Multi_sample,
    ID_column_of_Clinical
  )
)

# Compute HOSVD
HOSVD <- computeHosvd(Z)

# Select features using selectFeatureProj in batch mode
cond <- attr(Z, "sampleData")
index <- selectFeatureProj(HOSVD, Multi, cond, de = 1e-3, input_all = 3)

# Extract and display selected features
head(tableFeatures(Z, index))

Inputs are a list of matrices sharing features and clinical metadata; output is a table of selected features with p-values.

Multi Omics Sharing Samples

Integrate multiple omics datasets sharing the same samples using projection-based SVD and HOSVD.

library(TDbasedUFEadv)

# Prepare a tensor from the list of matrices and wrap in a SummarizedExperiment-like object
# Z <- PrepareSummarizedExperimentTensor(sample = sample, feature = feature, value = value)

# Compute HOSVD
# HOSVD <- computeHosvd(Z)

# Select features across individual profiles
# index <- selectFeature(HOSVD, input_all, de = 0.05)

# Extract, print, and save selected features
# head(tableFeatures(Z, index))

Inputs are multi-omics matrices sharing samples; output is a table of selected features.

When to Use

  • Unsupervised feature extraction (e.g., gene selection) from multi-omics datasets where either features (genes) or samples are shared.
  • When dealing with a small number of samples associated with a large number of features (common in genomics).
  • Evaluating selected genes via enrichment analysis using tools like enrichR::enrichr, STRINGdb::STRINGdb, or DOSE::enrichDGN.

When NOT to Use

  • For supervised differential expression analysis where group labels are strictly used to guide the mathematical decomposition; use DESeq2 or limma instead.
  • When you prefer a fully automated, non-interactive pipeline without manual/interactive selection of singular value vectors; use standard SVD or HOSVD packages directly.

Data Requirements

  • Input data should be matrix-like (e.g., gene expression matrices from RTCGA.rnaseq like BLCA.rnaseq).
  • For feature-sharing multi-omics, a list of matrices (e.g., Multi) where rows represent features and columns represent samples.
  • Metadata/clinical data (e.g., BLCA.clinical) to construct condition vectors for selecting singular value vectors.

Key Parameters

  • de (1e-3): Standard deviation threshold for feature selection in selectFeatureProj or selectFeature.
  • input_all: Vector of selected singular value vectors in selectSingularValueVectorLarge or selectFeatureProj.

Best Practices

  • Master the basic TDbasedUFE package workflows before moving to the advanced features of TDbasedUFEadv.
  • Use memory-efficient SVD with partial summation (computeSVD) when the number of features is too large to construct a full tensor.
  • Verify the success of singular value vector selection interactively using histograms and standard deviation optimization via selectSingularValueVectorLarge.
  • Perform downstream enrichment analysis on selected genes using enrichR::enrichr or STRINGdb::STRINGdb to biologically validate the unsupervised feature selection.

Common Pitfalls

  • Out of memory errors: Attempting to apply computeHosvd on a full tensor with too many features. Fix: Use computeSVD with partial summation to reduce memory requirements.
  • Incorrect tensor permutation: Forgetting to align features across datasets. Fix: Use aperm to permute the tensor modes appropriately before wrapping with PrepareSummarizedExperimentTensor.

Alternatives

  • DESeq2: For supervised differential expression analysis.
  • limma: For linear modeling of gene expression data.
  • TDbasedUFE: For simpler, standard unsupervised feature extraction workflows.

Citations

  • Taguchi, Y-H. 2020. Unsupervised Feature Extraction Applied to Bioinformatics. Springer International Publishing. https://doi.org/10.1007/978-3-030-22456-1
  • Taguchi, Y-H. 2023. TDbasedUFE: Tensor Decomposition Based Unsupervised Feature Extraction.

References

리뷰

아직 리뷰가 없습니다. 사용해 본 소감을 남겨 주세요.

댓글

로그인 없이 쓸 수 있습니다. 사용 후기, 질문, 작동하지 않은 환경 등을 편하게 남겨 주세요.

아직 댓글이 없습니다. 첫 댓글을 남겨 보세요.

보내면 바로 공개됩니다. 이메일 주소나 전화번호 같은 개인 정보는 쓰지 마세요. URL은 2개까지입니다.

0 / 1,000자

이 양식은 reCAPTCHA로 보호되며 Google 개인정보처리방침 및 서비스 약관이 적용됩니다.

같은 저장소의 스킬

The package contains functions for exploratory oligonucleotide array analysis. The dependence on tkWidgets only concerns few convenience functions. 'affy' is fully functional without it.

한국어 요약은 준비 중입니다. 원문 설명을 표시하고 있습니다.

bioMate-AI/biomate-bioconductor-kb7932026년 6월 21일 업데이트

This tool uses the label-tree function from HyPhy to annotate a phylogenetic tree. It allows users to select a subset of leaves using either a regular expression or a list of sequence names, and then apply a specified label to these selecte

한국어 요약은 준비 중입니다. 원문 설명을 표시하고 있습니다.

bioMate-AI/biomate-bioconductor-kb7932026년 6월 21일 업데이트

This package provides a client for the Bioconductor AnnotationHub web resource. The AnnotationHub web resource provides a central location where genomic files (e.g., VCF, bed, wig) and other resources from standard locations (e.g., UCSC, En

한국어 요약은 준비 중입니다. 원문 설명을 표시하고 있습니다.

bioMate-AI/biomate-bioconductor-kb7932026년 6월 21일 업데이트

apeglm provides Bayesian shrinkage estimators for effect sizes for a variety of GLM models, using approximation of the posterior for individual coefficients.

한국어 요약은 준비 중입니다. 원문 설명을 표시하고 있습니다.

bioMate-AI/biomate-bioconductor-kb7932026년 6월 21일 업데이트

ASURAT is a software for single-cell data analysis. Using ASURAT, one can simultaneously perform unsupervised clustering and biological interpretation in terms of cell type, disease, biological process, and signaling pathway activity. Inputting a single-cell RNA-seq data and knowledge-based databases, such as Cell Ontology, Gene Ontology, KEGG, etc., ASURAT transforms gene expression tables into original multivariate tables, termed sign-by-sample matrices (SSMs).

한국어 요약은 준비 중입니다. 원문 설명을 표시하고 있습니다.

bioMate-AI/biomate-bioconductor-kb7932026년 6월 21일 업데이트

AUCell allows to identify cells with active gene sets (e.g. signatures, gene modules...) in single-cell RNA-seq data. AUCell uses the "Area Under the Curve" (AUC) to calculate whether a critical subset of the input gene set is enriched with

한국어 요약은 준비 중입니다. 원문 설명을 표시하고 있습니다.

bioMate-AI/biomate-bioconductor-kb7932026년 6월 21일 업데이트

bioMate-AI의 스킬 모두 보기

이 스킬의 문제 신고