R解析fastp输出的json文件

目的:需要解析fastp输出的一批json文件,从中提取一些信息。 使用2个R包: R语言解析json 批量读取json参考

rm(list=ls())

#####本程序目的是为了读取本地的RNA测序数据的质控后的json文件,从中解析出需要的信息
install.packages("rjson")
install.packages("jsonlite")
library(rjson)
library(jsonlite)
filelist <- list.files(pattern=".*.json")#列出当前文件夹下所有的json数据文件名(每个文件名以.json结尾)
length(filelist)#文件个数
time1<-Sys.time()#当前系统时间
datalist <- lapply(filelist, function(x) fromJSON(x)) #利用fromJSON函数按照文件名列表读取文件
time2<-Sys.time()-time1;time2#计算读取文件花费的时间

frame <- list()
for (i in 1:length(filelist)) {
 q20_rate <-  datalist[[i]]$summary$after_filtering$q20_rate
 q30_rate <- datalist[[i]]$summary$after_filtering$q30_rate
 total_reads <- datalist[[i]]$summary$before_filtering$total_reads
 after_filter_reads <- datalist[[i]]$summary$after_filtering$total_reads
 clean_rate_reads <- after_filter_reads/total_reads
 filename <- filelist[[i]]
 info <- c(filename,q20_rate,q30_rate,total_reads,after_filter_reads,clean_rate_reads)
 frame[[i]] <- info 
 print(frame)
}
write.csv(frame,file = "reads info.csv")
回到页面顶部