Erlend — May 12, 2014, 1:46 PM
##
## Erlend april 2014
## Tilegning av klimadata for hvert av nedbørsfeltene
## Original: Mulugeta B. Zelelew, NTNU
# =============================================================
# Setter arbeidskatalog og tar inn R-pakkene som trengs
setwd("C:/Users/Erlend/Documents/NTNU/Masteroppgave/Data/WI")
Error: cannot change working directory
library(SDMTools)
Error: there is no package called 'SDMTools'
id = 1 # 1 for temperatur eller 2 for nedbør
# Leser inn ASCII-fil med felt-ID'er fra ArcGIS.
regions <- matrix(scan("C:/Users/Erlend/Documents/NTNU//Masteroppgave/Data/WI/felt.asc",skip=6),1550,1195, byrow=T)
Warning: cannot open file
'C:/Users/Erlend/Documents/NTNU//Masteroppgave/Data/WI/felt.asc': No such
file or directory
Error: cannot open the connection
#image(catchments)
regions[regions==-9999] <- NA
Error: object 'regions' not found
#
if (id ==1){dtype<-"tm"}else
if (id ==2){ dtype<-"rr"}
# Ordner diverse til utputt-filene
hdr<- paste("Catch_",seq(0,56,1), sep="")
filename <- "temp3.out"
write.table(t(hdr), file = filename, quote = FALSE, sep = "\t ",row.names = FALSE,col.names = FALSE )
# Lister opp klimadata
climfile<- list.files(path = "E:/Tempdata", pattern ="*.asc",
all.files = TRUE,full.names = TRUE, recursive=TRUE)
#tempdata=read.asciigrid(climfile[j])
#image(tempdata)
# For-løkke for den rekken av klimadata som skal tas inn i studiet.
# I dette tilfellet perioden fra 1.1.1961 til 31.12.1990
for (j in 1620:length(climfile)){
Next.climfile <- climfile[j]
nl<-nchar(Next.climfile)
# Ta ut dato
day<-as.character(substr(Next.climfile,nl-5,nl-4))
month<-as.character(substr(Next.climfile,nl-8,nl-7))
year<-as.character(substr(Next.climfile,nl-13,nl-10))
date_new <- paste(day,month,year,sep="-")
climdata <- matrix(scan(Next.climfile,skip=6),1550,1195, byrow=T)
climdata[climdata>=10000] <- NA
climdata[climdata==-9999] <- NA
# OBS!Klimadata er multiplisert med 10 i rådata
# og temperatur er oppgitt i Kelvin
# for temperatur
if (id ==1){climdata<-climdata/10-273.2}else
# for nedbør
if (id ==2) {climdata<- climdata/10}
# Finner gjennomsnittsverdiene av klimadata for hvert av nedbørsfeltene
zs = ZonalStat(climdata,regions,FUN='mean')
data_frame <- round(t(zs$mean),digits=3)
#data_frame.num=as.numeric(data_frame_work)
# For store felt med delfelt som egne felt i studie må disse tas inn ved omregninger som under.
#Verdalsvassdraget
data_frame[,44]=round(((176/881)*(data_frame[,32])+(705/881)*(data_frame[,44])),digits=3)
data_frame[,45]=round(((96/483)*(data_frame[,29])+(387/483)*(data_frame[,45])),digits=3)
#Namsen
data_frame[,52]=round(((702/1038)*(data_frame[,25])+(336/1038)*(data_frame[,52])),digits=3)
data_frame[,4]=round(((120/1774)*(data_frame[,11])+(14/1774)*(data_frame[,9])+(64/1774)*(data_frame[,38])+(1038/1774)*(data_frame[,52])+(538/1774)*(data_frame[,4])),digits=3)
data_frame[,33]=round(((427/852)*(data_frame[,35])+(425/852)*(data_frame[,33])),digits=3)
#Stjørdalsvassdraget
data_frame[,21]=round(((184/532)*(data_frame[,20])+(348/532)*(data_frame[,21])),digits=3)
data_frame[,27]=round(((532/819)*(data_frame[,21])+(97/819)*(data_frame[,28])+(190/819)*(data_frame[,27])),digits=3)
data_frame[,43]=round(((495/1874)*(data_frame[,42])+(819/1874)*(data_frame[,27])+(560/1874)*(data_frame[,43])),digits=3)
#Skrive om til bokstaver
#data_frame=as.character(data_frame.num)
#date_frame <- rbind(date_frame,date_new)
data_frame <- cbind(date_new, data_frame)
# Skriver tabell med daglige klimadata for hvert felt
write.table(data_frame, file =filename, append = TRUE, quote = FALSE, sep = "\t ", row.names = FALSE,col.names = FALSE, )
}
Error: missing value where TRUE/FALSE needed