在R中,对TCGA基因表达谱根据barcode命名规则筛选样本匹配的正常样本和乳腺癌样本
时间: 2024-06-12 16:05:31 浏览: 273
乳腺癌(Breast Cancer)数据集
首先,需要下载TCGA数据,并解析出barcode信息。可以使用TCGAbiolinks包来实现这一步骤。
```R
library(TCGAbiolinks)
library(dplyr)
# 下载TCGA数据
query <- GDCquery(project = "TCGA-BRCA", data.category = "Transcriptome Profiling",
data.type = "Gene Expression Quantification", platform = "Illumina HiSeq")
GDCdownload(query)
# 解析barcode信息
TCGA <- GDCprepare(query, save.filename = "TCGA.rda", summarizedExperiment = TRUE)
barcode <- colnames(TCGA)[1:12]
barcode_df <- data.frame(barcode = barcode, stringsAsFactors = FALSE)
```
接下来,需要根据barcode命名规则,筛选出和乳腺癌样本匹配的正常样本和乳腺癌样本。TCGA的barcode命名规则为:
```
[Barcode]-[SampleType]-[Portion]-[Analyte]-[Plate]-[Center]-[Set]-[Batch]-[Date]
```
其中,SampleType为样本类型,BRCA-N表示正常样本,BRCA-T表示乳腺癌样本。我们可以使用正则表达式来匹配符合条件的barcode。
```R
# 筛选乳腺癌样本
BRCA_barcode <- filter(barcode_df, grepl("BRCA-T", barcode))$barcode
# 筛选匹配的正常样本
normal_barcode <- filter(barcode_df, grepl("BRCA-N", barcode))$barcode
normal_barcode <- normal_barcode[gsub("-01A-", "-11A-", normal_barcode) %in%
gsub("-01A-", "-11A-", BRCA_barcode)]
```
最后,可以使用TCGA数据的表达矩阵和筛选出的样本barcode进行分析。
```R
# 提取表达矩阵
TCGA_mat <- assay(TCGA)
# 筛选样本
TCGA_BCCA <- TCGA_mat[, c(BRCA_barcode, normal_barcode)]
```
阅读全文