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

bioconductor-sgcp

SGC is a semi-supervised pipeline for gene clustering in gene co-expression networks. SGC consists of multiple novel steps that enable the computation of highly enriched modules in an unsupervised manner. But unlike all existing frameworks, it further incorporates a novel step that leverages Gene Ontology information in a semi-supervised clustering method that further improves the quality of the computed modules.

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

설치 방법 보기

포함된 파일(1)

  • SKILL.md6.0 KB

SKILL.md(원문)

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

SGCP

Workflows

Standard Workflow

Construct gene co-expression networks, perform clustering, and apply semi-supervised classification using Gene Ontology information.

library(SGCP)
library(SummarizedExperiment)
library(org.Hs.eg.db)

# Load example dataset
data(cheng)
expData <- assay(cheng)
geneID <- rowData(cheng)$ENTREZID
annotation_db <- "org.Hs.eg.db"

# Option 1: Automatic Run using ezSGCP
# (Precomputed data loaded here to avoid long execution times)
data(sgcp)
summary(sgcp, show.data=TRUE)

# Plot PCA and silhouette index
SGCP_ezPLOT(sgcp = sgcp, expreData = expData, silhouette_index = TRUE, keep = FALSE)

# Option 2: Step-by-Step Run
# 1. Network Construction
resAdja <- adjacencyMatrix(expData = expData, hm = NULL)

# 2. Network Clustering (using precomputed resClus for speed)
data(resClus)
summary(resClus)

# Plot PCA of expression data
pl <- SGCP_plot_pca(m = expData, clusLabs = NULL, tit = "PCA plot", ps = .5)
print(pl)

Note on inputs/outputs:

  • Input: A gene expression matrix, a vector of gene Entrez IDs, and an organism-specific annotation database.
  • Output: A list containing initial clusters, semi-labeled genes, semi-supervised classification results, and final biologically enriched gene modules.

When to Use

  • Gene Co-expression Networks: Constructing gene co-expression networks and organizing genes into modules using adjacencyMatrix() and clustering().
  • GO Integration: Integrating Gene Ontology (GO) enrichment analysis into the clustering pipeline using geneOntology().
  • Semi-supervised Classification: Applying semi-supervised classification (e.g., KNN or logistic regression) to refine gene modules using semiSupervised().
  • Network Visualization: Visualizing gene expression PCA plots and network adjacency heatmaps using SGCP_plot_pca() and SGCP_plot_heatMap().

When NOT to Use

  • Raw Sequence Alignment: For raw sequence alignment or differential expression analysis, use packages like DESeq2 or edgeR because SGCP requires preprocessed, normalized expression data with non-zero variance.
  • Unsupervised Clustering Without GO: For purely unsupervised clustering without any biological annotation or GO integration, use standard R clustering functions (e.g., kmeans or hclust) because SGCP is specifically designed to leverage GO information.

Data Requirements

  • Expression Data (expData): A matrix or data frame of size $m \times n$ (genes by samples) of normalized DNA-microarray or RNA-seq data. Genes must have expression values across all samples (no missing values) and non-zero variance.
  • Gene Identifiers (geneID): A vector of size $m$ containing unique gene identifiers (e.g., Entrez IDs) compatible with the annotation database.
  • Annotation Database (annotation_db): A genome-wide annotation package name (e.g., "org.Hs.eg.db").

Key Parameters

  • calibration (FALSE): Boolean in adjacencyMatrix() to perform network calibration.
  • norm (TRUE): Boolean in adjacencyMatrix() to divide each gene vector by its L2 norm.
  • tom (TRUE): Boolean in adjacencyMatrix() to add Topological Overlap Matrix to the network.
  • kopt (NULL): Integer in clustering() specifying the user-defined optimal number of clusters.
  • method (NULL): Method for determining the number of clusters in clustering(); options include "relativeGap", "secondOrderGap", and "additiveGap".
  • direction (c("over", "under")): Test direction for GO enrichment in geneOntology().
  • ontology (c("BP", "CC", "MF")): GO ontologies to test in geneOntology().
  • model ("knn"): Classification model in semiSupervised(); options include "knn" and "lr".

Best Practices

  • Ensure all preprocessing, normalization, and batch effect corrections are completed on the expression matrix before inputting to SGCP.
  • Filter out genes with zero variance or missing values across samples prior to running adjacencyMatrix().
  • Evaluate and compare the three cluster-number determination methods ("relativeGap", "secondOrderGap", "additiveGap") using GO validation.
  • Enable the silhouette index calculation (sil = TRUE) in clustering() to evaluate the quality of the initial clusters.

Common Pitfalls

  • Mismatched Gene Identifiers: Mismatch between gene identifiers in geneID and the standard expected by GOstats / annotation_db. Fix: Ensure geneID contains valid Entrez IDs (or TAIR IDs for Arabidopsis) that match the selected annotation_db.
  • Long Computation Times: Long computation times during the GO validation or clustering steps. Fix: Use precomputed results where possible, or reduce the number of genes to those with the highest variance.
  • Zero Variance Genes: Error due to genes with zero variance across samples. Fix: Filter the input expression matrix to remove zero-variance genes before running the pipeline.

Alternatives

  • WGCNA for standard unsupervised gene co-expression network analysis.
  • GOstats for standalone hypergeometric testing of Gene Ontology terms.
  • SummarizedExperiment for general containerization of biological assays and genomic features.

Citations

  • Cheng, J. et al. (Ischemic cardiomyopathy dataset reference).

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-kb7972026년 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-kb7972026년 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-kb7972026년 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-kb7972026년 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-kb7972026년 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-kb7972026년 6월 21일 업데이트

bioMate-AI의 스킬 모두 보기

이 스킬의 문제 신고