使用一个R脚本处理我的文件夹

时间:2016-07-17 13:12:05

标签: r

我在下面编写了这段代码,它给了我想要的东西

pepgrs <- read.xls("HLA1.xlsx")    #Load raw data file

names(pepgrs)[1] <- "Pos"    #Remove the header and make line #1 the header
names(pepgrs)[2] <- "Peptide"
names(pepgrs)[3] <- "ID"
names(pepgrs)[4] <- "nM"
names(pepgrs)[5] <- "Rank"
names(pepgrs)[6] <- "Core"
names(pepgrs)[7] <- "Rank"
names(pepgrs)[8] <- "binding"

pepgrs <- pepgrs[-1, ]    #Remove row #1

pepgrs$Rank <- as.numeric(pepgrs$Rank) #Change from function to numeric 

基于排名的分组数据

pepgrs$annotated <- ifelse(pepgrs$Rank<=2, "0-2", 
                           ifelse(pepgrs$Rank<=10, "2-10", 
                                  ifelse(pepgrs$Rank<=20, "10-20", 
                                         ifelse(pepgrs$Rank<=30, "20-30", 
                                                ifelse(pepgrs$Rank<=40, "30-40", 
                                                       ifelse(pepgrs$Rank<50, "40-50", "All"))))))

绘制数据图表...注释与总结肽编号

barplot(figure1, xlab="Rank", ylab="Peptide count", 
        names.arg=c("0-2", "2-10", "10-20", "20-30", "30-40", "40-50", "All"), 
        col=rainbow(5)) 

这是我想要的输出

write.table(figure1, file = "nontpsec.xls") # output the data file

我尝试了这段代码,但我的输出是Null

pepgrs <- function(pepgrs) {
  pepgrs <- read.xls("HLA1.xlsx")
  names(pepgrs)[1] <- "Pos"
  names(pepgrs)[2] <- "Peptide"
  names(pepgrs)[3] <- "ID"
  names(pepgrs)[4] <- "nM"
  names(pepgrs)[5] <- "Rank"
  names(pepgrs)[6] <- "Core"
  names(pepgrs)[7] <- "Rank"
  names(pepgrs)[8] <- "binding"
  pepgrs <- pepgrs[-1, ]
  table(pepgrs$binding)
  pepgrs$Rank <- as.numeric(pepgrs$Rank)
  pepgrs$annotated <- ifelse(pepgrs$Rank<=2, "0-2", ifelse(pepgrs$Rank<=10, "2-  10", ifelse(pepgrs$Rank<=20, "10-20", ifelse(pepgrs$Rank<=30, "20-30", ifelse(pepgrs$Rank<=40, "30-40", ifelse(pepgrs$Rank<50, "40-50", "All"))))))
  figure1 <- table(pepgrs$annotated)
  barplot(figure1, xlab="Rank", ylab="Peptide count", names.arg=c("0-2", "2-10", "10-20", "20-30", "30-40", "40-50", "All"), col=rainbow(5))  
  write.table(figure1, file = "nontpsec.xls") 
}
my.files <- list.files(pattern = ".xlsx")
outputs <- lapply(my.files, pepgrs)

library(plyr)
one.header.output <- rbind(outputs)
write.table(one.header.output, file = "nontpsec1.csv") #Output is Null

这是我写过的第一个R剧本,非常感谢任何帮助。

0 个答案:

没有答案