Commit 8f55c495 authored by Georges Kunstler's avatar Georges Kunstler
Browse files

modifier spain to include code for bad measurment

No related merge requests found
Showing with 27 additions and 14 deletions
+27 -14
......@@ -9,24 +9,29 @@ rm(list = ls()); source("./R/format.function.R"); library(reshape)
data.paracou <- read.table("./data/raw/DataParacou/20130717_paracou_1984_2012.csv",header=TRUE,stringsAsFactors=FALSE,sep = ";", na.strings = "NULL")
#barplot(apply(!is.na(data.paracou[,paste("circ_",1984:2012,sep="")]),MARGIN=2,FUN=sum),las=3)
data.paracou <- data.paracou[,c(1:8,61:62,73:74,85:86,96:97)]
colnames(data.paracou) <- c("forest","plot","subplot","tree","vernacular","taxonid","x","y","circum2001","dead2001","circum2005","dead2005","circum2009","dead2009","yeardied","typedeath")
data.paracou <- data.paracou[,c("foret","parcelle","carre","arbre","vernaculaire","idtaxon",
"x","y","circ_2001","code_2001","circ_2005","code_2005",
"circ_2009","code_2009","campagne_mort","type_mort")]
colnames(data.paracou) <- c("forest","plot","subplot","tree","vernacular","taxonid","x","y","circum2001","code2001","circum2005","code2005","circum2009","code2009","yeardied","typedeath")
for(k in 7:14) {
data.paracou[,k] <- gsub(",",".",data.paracou[,k]); data.paracou[,k] <- as.numeric(data.paracou[,k]) } ## Replace all , in decimals with .
data.paracou$treeid <- apply(data.paracou[,1:4],1,paste,collapse="."); ## Create a tree id
data.paracou <- data.paracou[,c(ncol(data.paracou),1:(ncol(data.paracou)-1))]
## keep only tree alive in 2001
data.paracou <- subset(data.paracou,subset=!(as.numeric(data.paracou[["yeardied"]])<=2001 & !is.na(data.paracou[["yeardied"]])))
### read species names
species.clean <- read.csv("./data/raw/DataParacou/20130717_paracou_taxonomie.csv",stringsAsFactors=FALSE, header = T, sep = ";")
## Create a species code to try and species.clean and data.paracou - NEED TO CHECK WHETHER SPCODE COMES FROM TAXONID OR VERNACULAR OR BOTH
species.clean$sp <- apply(species.clean[,1:5],1,paste,collapse=".")
data.paracou$sp <- apply(data.paracou[,3:7],1,paste,collapse=".")
data.paracou <- merge(data.paracou, as.data.frame(species.clean[,c(10,13)]), by = "sp", sort = F)
## "Simplify" the species.code to just vernacular and taxonid, which is hopefully sufficient to identify species
species.clean$sp = apply(species.clean[,4:5],1,paste,collapse=".")
data.paracou$sp = apply(data.paracou[,7:8],1,paste,collapse=".")
length(unique(data.paracou$sp))
## SPECIES CODE COME FROM idTaxon in paracou_taxonomie and taxonid in paracou_1984_2012 to match the traits data we need to use the "Genus species"
## we better work not work with vernacular because this doesn't match necesseraly the Genus species taxonomie
species.clean$sp <- species.clean[["idTaxon"]]
data.paracou$sp <- data.paracou[["taxonid"]]
## data.paracou <- merge(data.paracou, as.data.frame(species.clean[!duplicated(species.clean[["sp"]]),c("Genre","Espece","sp")]), by = "sp", sort = FALSE)
######################################
## MASSAGE TRAIT DATA
......@@ -39,15 +44,23 @@ length(unique(data.paracou$sp))
data.paracou2 <- data.paracou[rep(1:nrow(data.paracou),each=2),c(1:10,(ncol(data.paracou)-2):ncol(data.paracou))]
rownames(data.paracou2) <- 1:nrow(data.paracou2); data.paracou2 <- as.data.frame(data.paracou2)
data.paracou2$yr1 <- rep(c(2001,2001+4),nrow(data.paracou)); data.paracou2$yr2 <- rep(c(2005,2005+4),nrow(data.paracou))
data.paracou2$year <- rep(c(5,5),nrow(data.paracou))
data.paracou2$year <- rep(c(4,4),nrow(data.paracou))
data.paracou2$dbh1 <- c(rbind(data.paracou$circum2001/pi,data.paracou$circum2005/pi))
data.paracou2$dbh2 <- c(rbind(data.paracou$circum2005/pi,data.paracou$circum2009/pi))
data.paracou2$dead <- c(as.numeric(rbind(data.paracou$dead2005 > 0,data.paracou$dead2009 > 0)))
data.paracou2$code1 <- c(as.numeric(rbind(data.paracou$code2001,data.paracou$code2005)))
data.paracou2$code2 <- c(as.numeric(rbind(data.paracou$code2005,data.paracou$code2009)))
data.paracou2$dead <- rep(0,nrow(data.paracou)*2)
data.paracou2$dead[c(as.numeric(data.paracou[["yeardied"]]) %in% 2001:2005 & (!is.na(data.paracou[["yeardied"]])),
as.numeric(data.paracou[["yeardied"]]) %in% 2006:2009 & (!is.na(data.paracou[["yeardied"]])))] <- 1
data.paracou <- data.paracou2
## change unit and names of variables to be the same in all data for the tree
data.paracou$G <- 10*(data.paracou$dbh2-data.paracou$dbh1)/data.paracou$year ## diameter growth in mm per year
data.paracou$G[data.paracou$code1>0] <- NA
data.paracou$G[data.paracou$code2>0] <- NA
data.paracou[which(data.paracou$G < -50),] ## THERE SEEMS TO BE SOME PROBLEMS WITH THE DBH DATA
data.paracou$D <- data.paracou[["dbh1"]]; data.paracou$D[data.paracou$D == 0] <- NA ;## diameter in cm
data.paracou$plot <- apply(data.paracou[,c("forest","plot","subplot")],1,paste,collapse=".") ## plot code
......
......@@ -44,7 +44,7 @@ write.csv(data.max.height,file="./data/process/data.max.height.spain.csv") # I w
## change unit and names of variables to be the same in all data for the tree
data.spain$G <- data.spain[["adbh"]] ## diameter growth in mm per year
data.spain$year <- rep(NA,length(data.spain[["adbh"]])) ## number of year between measurement - MISSING
data.spain$year <- data.spain[["years"]] ## number of year between measurement - MISSING
data.spain$D <- data.spain[["dbh1"]]/10 ## diameter in mm convert to cm
data.spain$dead <- as.numeric(data.spain[["Life_status"]] == "dead") ## dummy variable for dead tree 0 alive 1 dead - MIGHT WANT TO CHANGE THIS TO BE BASED ON MORTALITY_CUT
data.spain$sp <- as.character(data.spain[["SP_code"]]) ## species code
......
Supports Markdown
0% or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment