- 当我们TCGA官方下载数据miRNA表达数据时,这些数据大多都位于多个文件夹下,而且有类似文件容易混淆。
- 说实话,R处理文件并没有perl好用,但并不代表不能处理
f1 <- list.files(pattern="isoforms.quantification",recursive=T)
f2 <- list.files(pattern="isoforms.quantification.txt.parcel",recursive=T)
f3 <- setdiff(f1,f2);#取两者的差集
f4 <- strsplit(f3,"/")
f5 <- data.frame(matrix(unlist(f4), nrow=491, byrow=T))
f6 <- as.matrix(f5)
f7 <- f6[,3]
结果展示,最终把文件名取出
- 取出样本后,就该提取数据合为矩阵
#取某个样本,求提取YES后剩的最终行数
da1 <- read.table(f3[1],header = T,stringsAsFactors = F)
da2 <- da1[da1$cross.mapped=="N",]
da3 <- aggregate(read_count~miRNA_region,data=da2,sum)
da <- data.frame(da3$miRNA_region)
colnames(da) <- "miRNA_region"
#利用循环把所有样本的RPM值合为矩阵
for(i in 1:length(f3)){
a <- read.table(f3[i],header = T,stringsAsFactors = F)
b <- a[a$cross.mapped=="N",]
RPM <- aggregate(read_count~miRNA_region,data = b,sum)
RPM$read_count <- (RPM$read_count*10^6)