Open AGREEN941 opened 1 year ago
I keep having my code error at ResidenceExtractId:
install.packages("VTrack") library(VTrack)
head(Raw2020_TRUE)
Raw2020_TRUE$test3 <- cbind(Raw2020_TRUE$Receiver_Type,Raw2020_TRUE$receiver_sn, by="-") Raw2020_TRUE$test3 <- paste(Raw2020_TRUE$Receiver_Type, "-", Raw2020_TRUE$receiver_sn)
colnames(Raw2020_TRUE)[colnames(Raw2020_TRUE)=="test3"] <- "Receiver.Name" colnames(Raw2020_TRUE)[colnames(Raw2020_TRUE)=="receiver_sn"] <- "Receiver.S.N" colnames(Raw2020_TRUE)[colnames(Raw2020_TRUE)=="detection_timestamp_utc"] <- "Date.Time" colnames(Raw2020_TRUE)[colnames(Raw2020_TRUE)=="transmitter_id"] <- "ID"
Raw2020_TRUE$Freq<-NULL Raw2020_TRUE$Code<-NULL Raw2020_TRUE$CodeSpace<-NULL Raw2020_TRUE$Longitude<-NULL Raw2020_TRUE$Latitude<-NULL Raw2020_TRUE$Station.Name<-NULL Raw2020_TRUE$station_no<-NULL Raw2020_TRUE$release_longitude<-NULL Raw2020_TRUE$release_latitude<-NULL
colnames(Raw2020_TRUE)[colnames(Raw2020_TRUE)=="deploy_lat"] <- "Station.Latitude" colnames(Raw2020_TRUE)[colnames(Raw2020_TRUE)=="deploy_long"] <- "Station.Longitude" colnames(Raw2020_TRUE)[colnames(Raw2020_TRUE)=="transmitter_codespace"] <- "Code.Space" colnames(Raw2020_TRUE)[colnames(Raw2020_TRUE)=="Signal"] <- "ID" colnames(Raw2020_TRUE)[colnames(Raw2020_TRUE)=="station"] <- "Station.Name" colnames(Raw2020_TRUE)[colnames(Raw2020_TRUE)=="glatos_tag_recovered"] <- "Sensor.2" colnames(Raw2020_TRUE)[colnames(Raw2020_TRUE)=="Sensor_value"] <- "Sensor.1" colnames(Raw2020_TRUE)[colnames(Raw2020_TRUE)=="Sensor_unit"] <- "Units.1" colnames(Raw2020_TRUE)[colnames(Raw2020_TRUE)=="sex"] <- "Units.2" colnames(Raw2020_TRUE)[colnames(Raw2020_TRUE)=="tag_serial_number"] <- "Transmitter.S.N"
Raw2020_TRUE <- Raw2020_TRUE[, c("Date.Time","Code.Space","ID", "Sensor.1","Units.1", "Sensor.2","Units.2","Transmitter.Name","Transmitter.S.N","Receiver.Name","Receiver.S.N","Station.Name","Station.Latitude","Station.Longitude")]
data2020<-ReadInputData(Raw2020_TRUE, iHoursToAdd=0, fIMOSATF=FALSE, fVemcoDualSensor=FALSE, dateformat = NULL, sVemcoFormat='1.0')
data2020$test3 <- cbind(Raw2020_TRUE$Code.Space,data2020$TRANSMITTERID, by="-") data2020$test3 <- paste(Raw2020_TRUE$Code.Space,"-",data2020$TRANSMITTERID)
data2020$TRANSMITTERID<-NULL
colnames(data2020)[colnames(data2020)=="test3"] <- "TRANSMITTERID"
data2020 <- data2020[, c("DATETIME","TRANSMITTERID","SENSOR1","UNITS1","RECEIVERID","STATIONNAME")]
str(data2020)
data2020$TRANSMITTERID<-gsub(" ", "",data2020$TRANSMITTERID)
data2020$TRANSMITTERID<-as.character(data2020$TRANSMITTERID) data2020$SENSOR1<-as.numeric(data2020$SENSOR1) data2020$UNITS1<-as.character(data2020$UNITS1) data2020$RECEIVERID<-as.character(data2020$RECEIVERID) data2020$STATIONNAME<-as.character(data2020$STATIONNAME)
setwd("/Volumes/Ph.D/Raw Files/2020")
MATRIX<- read.csv("/Volumes/Ph.D/Raw Files/2020/MATRIX.csv")
colnames(MATRIX)[colnames(MATRIX)=="Location"] <- "LOCATION" colnames(MATRIX)[colnames(MATRIX)=="Latitude"] <- "LATITUDE" colnames(MATRIX)[colnames(MATRIX)=="Longitude"] <- "LONGITUDE" colnames(MATRIX)[colnames(MATRIX)=="Radius"] <- "RADIUS" MATRIX$LOCATION<-as.integer(as.character(MATRIX$LOCATION))
MATRIX <- na.omit(MATRIX)
MATRIX_2020 <- GenerateDirectDistance(MATRIX)
rownames(MATRIX_2020) <- MATRIX_2020[,1]
MATRIX_2020$DM<-NULL
data2020$TRANSMITTERID<-as.factor(data2020$TRANSMITTERID) data2020$RECEIVERID<-as.factor(data2020$RECEIVERID)
Vtrack2020<-RunResidenceExtraction(data2020,"RECEIVERID",1,840, sDistanceMatrix = MATRIX_2020, iCores = 4)
This code is taking at least 12 hours and then errors saying: Error in ResidenceExtractId1(i) : task 5 failed - "argument is of length zero"
Literally don't know how to solve this!!!
I keep having my code error at ResidenceExtractId:
VTrack - All data
use Raw2022_TRUE file
Install packages
install.packages("VTrack") library(VTrack)
1st:Analyse data sheet (Raw2020_True)
see data frame
head(Raw2020_TRUE)
need to combine receiver type and receiver
Raw2020_TRUE$test3 <- cbind(Raw2020_TRUE$Receiver_Type,Raw2020_TRUE$receiver_sn, by="-") Raw2020_TRUE$test3 <- paste(Raw2020_TRUE$Receiver_Type, "-", Raw2020_TRUE$receiver_sn)
see data frame
head(Raw2020_TRUE)
sorting out files for Vtrack compatibility - change column names
colnames(Raw2020_TRUE)[colnames(Raw2020_TRUE)=="test3"] <- "Receiver.Name" colnames(Raw2020_TRUE)[colnames(Raw2020_TRUE)=="receiver_sn"] <- "Receiver.S.N" colnames(Raw2020_TRUE)[colnames(Raw2020_TRUE)=="detection_timestamp_utc"] <- "Date.Time" colnames(Raw2020_TRUE)[colnames(Raw2020_TRUE)=="transmitter_id"] <- "ID"
see data frame
head(Raw2020_TRUE)
Remove unnecessary columns
Raw2020_TRUE$Freq<-NULL Raw2020_TRUE$Code<-NULL Raw2020_TRUE$CodeSpace<-NULL Raw2020_TRUE$Longitude<-NULL Raw2020_TRUE$Latitude<-NULL Raw2020_TRUE$Station.Name<-NULL Raw2020_TRUE$station_no<-NULL Raw2020_TRUE$release_longitude<-NULL Raw2020_TRUE$release_latitude<-NULL
look at data frame
head(Raw2020_TRUE)
sorting out files for Vtrack compatibility - change column names
colnames(Raw2020_TRUE)[colnames(Raw2020_TRUE)=="deploy_lat"] <- "Station.Latitude" colnames(Raw2020_TRUE)[colnames(Raw2020_TRUE)=="deploy_long"] <- "Station.Longitude" colnames(Raw2020_TRUE)[colnames(Raw2020_TRUE)=="transmitter_codespace"] <- "Code.Space" colnames(Raw2020_TRUE)[colnames(Raw2020_TRUE)=="Signal"] <- "ID" colnames(Raw2020_TRUE)[colnames(Raw2020_TRUE)=="station"] <- "Station.Name" colnames(Raw2020_TRUE)[colnames(Raw2020_TRUE)=="glatos_tag_recovered"] <- "Sensor.2" colnames(Raw2020_TRUE)[colnames(Raw2020_TRUE)=="Sensor_value"] <- "Sensor.1" colnames(Raw2020_TRUE)[colnames(Raw2020_TRUE)=="Sensor_unit"] <- "Units.1" colnames(Raw2020_TRUE)[colnames(Raw2020_TRUE)=="sex"] <- "Units.2" colnames(Raw2020_TRUE)[colnames(Raw2020_TRUE)=="tag_serial_number"] <- "Transmitter.S.N"
look at data frame
head(Raw2020_TRUE)
Put into VTrack column order
Raw2020_TRUE <- Raw2020_TRUE[, c("Date.Time","Code.Space","ID", "Sensor.1","Units.1", "Sensor.2","Units.2","Transmitter.Name","Transmitter.S.N","Receiver.Name","Receiver.S.N","Station.Name","Station.Latitude","Station.Longitude")]
Extracts single or dual sensor data from a raw VEMCO
data2020<-ReadInputData(Raw2020_TRUE, iHoursToAdd=0, fIMOSATF=FALSE, fVemcoDualSensor=FALSE, dateformat = NULL, sVemcoFormat='1.0')
need full transmitter ID
data2020$test3 <- cbind(Raw2020_TRUE$Code.Space,data2020$TRANSMITTERID, by="-") data2020$test3 <- paste(Raw2020_TRUE$Code.Space,"-",data2020$TRANSMITTERID)
data2020$TRANSMITTERID<-NULL
colnames(data2020)[colnames(data2020)=="test3"] <- "TRANSMITTERID"
data2020 <- data2020[, c("DATETIME","TRANSMITTERID","SENSOR1","UNITS1","RECEIVERID","STATIONNAME")]
str(data2020)
make sure you remove the spaces between the transmitter ID as this might cause issues
data2020$TRANSMITTERID<-gsub(" ", "",data2020$TRANSMITTERID)
data2020$TRANSMITTERID<-as.character(data2020$TRANSMITTERID) data2020$SENSOR1<-as.numeric(data2020$SENSOR1) data2020$UNITS1<-as.character(data2020$UNITS1) data2020$RECEIVERID<-as.character(data2020$RECEIVERID) data2020$STATIONNAME<-as.character(data2020$STATIONNAME)
need to input MATRIXdata
Set working directory
setwd("/Volumes/Ph.D/Raw Files/2020")
load in data file
MATRIX<- read.csv("/Volumes/Ph.D/Raw Files/2020/MATRIX.csv")
colnames(MATRIX)[colnames(MATRIX)=="Location"] <- "LOCATION" colnames(MATRIX)[colnames(MATRIX)=="Latitude"] <- "LATITUDE" colnames(MATRIX)[colnames(MATRIX)=="Longitude"] <- "LONGITUDE" colnames(MATRIX)[colnames(MATRIX)=="Radius"] <- "RADIUS" MATRIX$LOCATION<-as.integer(as.character(MATRIX$LOCATION))
Make the matrix
MATRIX <- na.omit(MATRIX)
MATRIX_2020 <- GenerateDirectDistance(MATRIX)
rownames(MATRIX_2020) <- MATRIX_2020[,1]
MATRIX_2020$DM<-NULL
Extract Residence and Nonresidence Events Within the Acoustic Detection Database- THIS CAN TAKE HOURS
THE NUMBER OF PINGS WE EXPECT TO BE COUNTED AS NOT FALSE ARE 2
data2020$TRANSMITTERID<-as.factor(data2020$TRANSMITTERID) data2020$RECEIVERID<-as.factor(data2020$RECEIVERID)
run all above fish subsets (need to change data frame and title for each)
Vtrack2020<-RunResidenceExtraction(data2020,"RECEIVERID",1,840, sDistanceMatrix = MATRIX_2020, iCores = 4)
This code is taking at least 12 hours and then errors saying: Error in ResidenceExtractId1(i) : task 5 failed - "argument is of length zero"
Literally don't know how to solve this!!!