-
Notifications
You must be signed in to change notification settings - Fork 5
/
createAllDiurnalFitDataObject.R
69 lines (64 loc) · 2.13 KB
/
createAllDiurnalFitDataObject.R
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
#!/usr/bin/env Rscript
install.packages("/projectnb/dietzelab/kiwheel/NEFI_pheno/PhenologyBayesModeling",repo=NULL)
library("ncdf4")
library(plyr)
library("PhenologyBayesModeling")
library(doParallel)
library("rjags")
library("runjags")
siteName <- "russellSage"
#diurnalFits <- dir(path="diurnalFits",pattern=siteName)
diurnalFits <- intersect(dir(pattern="varBurn2.RData"),dir(pattern=siteName))
c.vals <- numeric()
Q1.vals <- numeric()
Q2.vals <- numeric()
Q3.vals <- numeric()
days <- numeric()
counts <- numeric()
outDataFile <- paste(siteName,"_diurnalFitData.RData",sep="")
if(!file.exists(outDataFile)){
for(i in 1:length(diurnalFits)){
print(diurnalFits[i])
#load(paste("diurnalFits/",diurnalFits[i],sep=""))
load(diurnalFits[i])
if(typeof(var.burn)!=typeof(FALSE)){
out.mat <- as.matrix(var.burn)
print(colnames(out.mat))
c <- mean(out.mat[,2])
Q1 <- as.numeric(quantile(out.mat[,2],0.025))
Q2 <- as.numeric(quantile(out.mat[,2],0.5))
Q3 <- as.numeric(quantile(out.mat[,2],0.975))
#prec <- as.numeric(quantile(out.mat[,2],0.975))-as.numeric(quantile(out.mat[,2],0.025))
dy <- strsplit(diurnalFits[i],"_")[[1]][2]
dayDataFile <- intersect(dir(path="dailyNDVI_GOES",pattern=paste(dy,".csv",sep="")),dir(path="dailyNDVI_GOES",pattern=siteName))
print(dayDataFile)
dayData <- read.csv(paste("dailyNDVI_GOES/",dayDataFile,sep=""),header=FALSE)
ct <- length(dayData[2,][!is.na(dayData[2,])])
c.vals <- c(c.vals,c)
Q1.vals <- c(Q1.vals,Q1)
Q2.vals <- c(Q2.vals,Q2)
Q3.vals <- c(Q3.vals,Q3)
#prec.vals <- c(prec.vals,prec)
counts <- c(counts,ct)
days <- c(days,dy)
}
}
data <- list()
for(i in 1:length(days)){
if(days[i]<182){
days[i] <- as.numeric(days[i]) + 365
}
}
data$x <- as.numeric(days)
data$y <- as.numeric(c.vals)
data$Q1<- as.numeric(Q1.vals)
data$Q2<- as.numeric(Q2.vals)
data$Q3<- as.numeric(Q3.vals)
data$n <- length(data$x)
data$size <- as.numeric(counts)
print(dim(data$x))
print(dim(data$y))
print(data$x)
save(data,file=outDataFile)
print("Done with creating Data")
}