rm(list = ls())#清空列表
options(stringsAsFactors = F)#设定全局变量
library(foreign)#加载外部数据需要的包
library(stringr)#处理字符串需要的包
library(dplyr)#清洗数据需要的包
rawcount <- read.table("all.id.txt",#读入文件
header = T,#第一行为列名
row.names = 1,#第一列为行名,
check.names = F)#行名及列名保持原状
rawcount[1:4,1:4]#显示前4行及前4列
显示前四行及列
可以看到每列为一个样本,每行为一个基因的ensmble。
class(rawcount)#显示数据集的属性
dim(rawcount)#显示行的基因数及列的样本数
colnames(rawcount)#显示所有样本的名称,寻找规律
结果展示,注意样本名称的规律
cc<- rawcount[,str_detect(colnames(rawcount),"chang")]#筛选肠标本
cn <- cc[,str_detect(colnames(cc),"N")]#筛选肠N标本
ct <- cc[,str_detect(colnames(cc),"T")]#筛选肠T标本
colon.count <- cbind(cn,ct)#重新合并矩阵,肠N在前,肠T在后
View(colon.count)
肠样本分组后数据
目前肠矩阵中前20个样本为正常样本,后20个样本为肿瘤组织样本,后续我们根据样本的性质建立分组信息表
acN.list <- rep("changN",20)#生成前20个肠N标本分组信息
acT.list <- rep("changT",20)#生成前20个肠T标本分组信息
colon.list <- combine(c(acN.list),c(acT.list))#生成总体肠分组信息表及显示
table(colon.list)#显示分组情况数量
验证分组信息表-肠
gc<- rawcount[,str_detect(colnames(rawcount),"gan")]#筛选肝标本
gn <- gc[,str_detect(colnames(gc),"N")]#筛选肝N标本
gt <- gc[,str_detect(colnames(gc),"T")]#筛选肝T标本
liver.count <- cbind(gn,gt)#重新合并矩阵,肝N在前,肝T在后
agN.list <- rep("ganN",20)#生成前20个肝N标本分组信息
agT.list <- rep("ganT",20)#生成前20个肝T标本分组信息
liver.list <- combine(c(agN.list),c(agT.list))#生存肝分组信息
血的标本有多个时间点,比较特殊,以下筛选及合并血标本
wbc<- rawcount[,str_detect(colnames(rawcount),"WBC")]#筛选血标本
dim(wbc)#查看总共有多少血样本
View(wbc)#查看血样本规律及总体情况
shuqian<- wbc[,str_detect(colnames(wbc),"shuqian")]#筛选术前血标本
dim(shuqian)#查看术前血样本数量
d7<- wbc[,str_detect(colnames(wbc),"D7")]#筛选术后第7天血标本
dim(d7)#查看术后7天血样本数量
AC<- wbc[,str_detect(colnames(wbc),"AC")]#筛选术后第7天血标本
dim(AC)#查看化疗前血样本数量
数量需要对上
wbc.count <- cbind(shuqian,d7,AC)#重新合并矩阵,顺序及数量分别是术前血20个,7日18个,化疗前10个。
shuqian.list <- rep("shuqian",20)#生成前20个术前血分组信息
d7.list <- rep("D7",18)#生成18个术后7日血分组信息
ac.list <- rep("AC",10)#生成10个化疗前分组信息
wbc.list <- combine(c(shuqian.list),c(d7.list ),c(ac.list))#生存血分组信息
保存分组信息及矩阵信息
save(colon.count,colon.list,
liver.count,liver.list,
wbc.count,wbc.list,
file = "group.Rdata")
网友评论