首页 > > > 通量数据文件读入和预处理
#文件读入
library(stringr)
library(dplyr)
library(readr)
rm(list=ls())
setwd("G:/FLUX_DATA/trial for different time")
alldata=data.frame()
dir()->folders
newdir=str_c("./",folders)
length(folders)->nf
for(i in 1:nf)
{
list.files(newdir[i]) %>% str_detect("full_output")->targetfile.no
list.files(newdir[i]) [targetfile.no] -> targetfile
read_csv(str_c("./",folders[i],"/",targetfile), skip=1) %>%
slice(-1) %>%
select(date:daytime, H:qc_ch4_flux, `u*`) %>%
mutate_at(vars(H:`u*`),funs(as.double(.))) %>%
mutate(period=as.numeric(folders[i])) -> newdata
alldata=rbind(alldata,newdata)
}
write_csv(alldata,"alldata.csv")
##########################################
#质量控制
alldata$period=as.character(alldata$period)
alldata %>%
filter(period %in% c("2","6","10","15","30","60","120","240","360","480","720","1440")) -> subdata
NA -> subdata[subdata$qc_H==-9999 | subdata$qc_H==2,]$H
NA -> subdata[subdata$qc_LE==-9999 | subdata$qc_LE==2,]$LE
NA -> subdata[subdata$qc_co2_flux==-9999 | subdata$qc_co2_flux==2,]$co2_flux
NA -> subdata[subdata$qc_h2o_flux==-9999 | subdata$qc_h2o_flux==2,]$h2o_flux
NA -> subdata[subdata$qc_ch4_flux==-9999 | subdata$qc_ch4_flux==2,]$ch4_flux
subdata %>% filter(`u*`< 0.2) %>% select(-starts_with("qc_"), -`u*`) -> qcdata
write_csv(qcdata,"qcdata.csv")原文作者:;如有侵权,请联系管理员删除。