-
Notifications
You must be signed in to change notification settings - Fork 8
Description
Hi,
I try to do a stock assement with sca() method.
After I convert my data.frame to FLStock object :
mystock<-as.FLStock(land_t)
the command:
summary(mystock)
give me only values of one (1).
My all code:
`#stock assesment
library(FLCore)
library(ggplotFL)
library(FLa4a)
library(xlsx)
library(plotly)
dat=read.xlsx("Sprot_FLR.xlsx", sheetIndex = 1)
dat<-data.frame(dat$slot,dat$age, dat$year, dat$data, dat$units)
dat2<-na.omit(dat)
select only landings in tone
land_t <- na.omit(subset(dat, dat2$dat.slot=="landings", select=-dat.slot))
colnames(land_t)<- c("age","year","data","units")
landst <- as.FLQuant(land_t)
summary(landst)
plot(landst)
plot1=data.frame(land_t)
#qplot(x=year, y=data, data=plot1, color=factor(age),geom=c("point","line"),ylab="Catch (t)", xlab="")
p1<-ggplot(plot1, aes(x=year, y=data, group = age)) +
geom_line(aes(colour=as.factor(age))) + ylab("Catch (t)") + xlab("") +
theme(axis.text.x = element_text(angle = 90, hjust = 1))
ggplotly(p1)
select only landings in numbers
land_n <- na.omit(subset(dat, dat2$dat.slot=="landings.n", select=-dat.slot))
colnames(land_n)<- c("age","year","data","units")
landsn <- as.FLQuant(land_n)
summary(landsn)
plot(landsn)
plot2=data.frame(land_n)
#qplot(x=year, y=data, data=plot2, color=factor(age),geom=c("point","line"),ylab="Catch (1000^3)", xlab="")
p2<-ggplot(plot2, aes(x=year, y=data, group = age)) +
geom_line(aes(colour=as.factor(age))) + ylab("Catch (1000^3)") + xlab("") +
theme(axis.text.x = element_text(angle = 90, hjust = 1))
ggplotly(p2)
convert dataframe to FLStock
mystock<-as.FLStock(land_t)
summary(mystock) # empty ?!
add an index of abundance : cpue
#the statistical catch-at-age model
#fit <- sca(mystock, cpue)
update FLStock object
#stk<-mystock+fit
#plot(stk)
plot fitted vs observed catch-at-age
#plot(fit, ple4)
`
Sprot_FLR.xlsx
I look forward to some tips ...
Cheers !