這裡要介紹的是如何在R語言中將AffyMetrix平台所產出的.CEL檔轉成.txt檔或.csv檔。
首先要先分清楚手中的檔案是出自於哪一種版本、平台,這裡會介紹Affymetrix GeneChip®與Affymetrix Clariom™ Arrays這兩個平台所產出的.CEL檔該如何轉檔。
Affymetrix GeneChip®
以下有幾個套件需要下載安裝:
install.packages("BiocManager")
library(BiocManager)
BiocManager :: install("affyPLM")
library(affyPLM)
安裝好以上套件後,就可以開始轉檔啦setwd("path//~//~//~//~") ##將路徑設定在檔案所在地
Data <- ReadAffy() ##ReadAffy()讀取.CEL檔
eset.rma <- rma(Data) ##rma()預處理.CEL檔中的數據
exp.rma <- exprs(eset.rma) ##exprs()提取表達基因表達矩陣
write.table(exp.rma, file = "TEST.txt", sep = "\t", quote = FALSE, col.names = NA) ##將提取出的表達矩陣儲存為.txt檔,使用制表符分隔
write.csv(exp.rma, file = "TEST.csv", row.names = TRUE) ##或可將將提取出的表達矩陣儲存為.csv檔
Affymetrix Clariom™ Arrays
以下有幾個套件需要下載安裝:
install.packages("BiocManager")
library(BiocManager)
library(oligoClasses)
library(oligo)
安裝好以上套件後,就可以開始轉檔啦
cel_files <- list.files(path = "//~//~//~//~//", pattern = "\\.CEL$", full.names = TRUE) ##將路徑中的.CEL檔取為變數cel_files
raw_data <- read.celfiles(cel_files) ##讀取路徑中.CEL檔
eset <- rma(raw_data) ##對.CEL檔做log2預處理
expression_data <- exprs(eset) ##提取表現量
write.table(expression_data, file = "expression_data.txt", sep = "\t", quote = FALSE, col.names = NA) ##將檔案轉成.txt檔
write.csv(exprs(eset), file = "expression_data.csv", row.names = TRUE) ##將檔案轉成.csv檔