2. R语言整理TCGA数据整理

1. Linux下载TCGA数据笔记

由于数据下载到服务器时使用的是root账户

而R studio server 只能使用普通账户

查看文件权限

ll

修改ALL文件夹下所有文件的所有者

chown -R liutao:liutao /home/liutao/data/ALL 

源代码:https://www.cnblogs.com/jiangfeilong/p/11141208.html

这将把指定文件 filename 的所有者和所属组都修改为 liutao,只有 liutao 用户可以访问该文件


TCGA数据整理:

将metadata文件导入工作目录

使用R studio整理数据

###TCGA数据整理60660
setwd("~/data/ALL") #设置工作路径
library("rjson")
json <- jsonlite::fromJSON("~/data/ALL/raw/metadata.cart.2024-08-22.json")   #metadata文件名"
View(json)

sample_id <- sapply(json$associated_entities,function(x){x[,1]})
file_sample <- data.frame(sample_id,file_name=json$file_name)  

count_file <- list.files('~/data/ALL/raw/TARGET-ALL-P2-countfile',pattern = '*.tsv',recursive = TRUE)  #Counts文件夹名
###过滤parcel结尾的文件
count_file <- count_file[!grepl("\\.parcel$", count_file)]
count_file
count_file_name <- strsplit(count_file,split='/')
count_file_name <- sapply(count_file_name,function(x){x[2]})

#修改基因数
matrix = data.frame(matrix(nrow=60660,ncol=0))

#合并matrix
for (i in 1:length(count_file_name)){
  path = paste0('~/data/ALL/raw/TARGET-ALL-P2-countfile//',count_file[i]) #Counts文件夹名,不要删除"//"
  data<- read.delim(path,fill = TRUE,header = FALSE,row.names = 1)
  colnames(data)<-data[2,]
  data <-data[-c(1:6),]
  data <- data[3] #取出unstranded列(得到COUNT矩阵),若想提取fpkm-unstranded则改为data[7],fpkm-up-unstranded改为data[8]
  colnames(data) <- file_sample$sample_id[which(file_sample$file_name==count_file_name[i])]
  matrix <- cbind(matrix,data)
}

#导出matrix
write.table(file="TARGET-ALL_matrix532.txt",matrix,sep="\t",quote=F)

本例使用Linux gdc-client下载TCGA数据

在每个样本的文件夹中都保留一个“logs”文件夹

因此在上述代码中增加了grepl函数进行过滤

###过滤parcel结尾的文件
count_file <- count_file[!grepl("\\.parcel$", count_file)]

代码运行完成获得matrix矩阵

 

  • 1
    点赞
  • 4
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值