Spurt var um ‘töflu og/eða lengdar-þyngdarsambandsjöfnu sem hægt er að nota fyrir ufsa á Austurmiðum’.
Nota gagnapakkann ‘fjolst’ og ‘geo’ til að útbúa kort.
library(fjolst);library(geo)
Úrval sýna sem lagt er til grundvallar:
geoplot(grid = FALSE)
geopolygon(reg.bc[[6]], col = "green")
geopolygon(reg.bc[[8]], col = "royalblue3")
geopolygon(reg.bc[[9]], col = "red")
for(i in seq(along = reg.bc[1:10])) {
tmp <- reg.bc[[i]]
geolines(tmp)
}
geolines(island)
lat <- attributes(reg.bc)$txtloc$lat[1:10]
lon <- attributes(reg.bc)$txtloc$lon[1:10]
geotext(lat, lon, 1:10, cex = 1.5)
yyyy<-2005:2014
id <- which(stodvar$ar %in% yyyy)
s <- stodvar[id, ]
s <- s[s$synaflokkur == 2, ]
vf <- c(6, 60)
id <- which(s$veidarfaeri %in% vf)
s <- s[id, ]
areas <- c(6, 8, 9)
id <- which(s$area %in% areas)
s <- s[id, ]
k <- all.kv[all.kv$tegund == 3, ]
id <- which(k$lengd > 40)
k <- k[id, ]
k <- k[!is.na(k$slaegt), ]
k <- merge(k, s)
id <- which(s$synis.id %in% k$synis.id)
s <- s[id, ]
Fjöldi sýna:
table(s$ar, s$area)
##
## 6 8 9
## 2005 1 5 8
## 2006 2 7 12
## 2007 0 2 7
## 2008 1 5 5
## 2009 4 5 6
## 2010 2 9 8
## 2011 2 6 10
## 2012 2 6 6
## 2013 1 2 6
## 2014 0 6 5
og fjöldi mælinga:
table(k$ar, k$area)
##
## 6 8 9
## 2005 50 250 400
## 2006 100 350 600
## 2007 0 100 347
## 2008 50 250 250
## 2009 200 250 300
## 2010 100 448 398
## 2011 100 300 498
## 2012 100 300 299
## 2013 49 100 300
## 2014 0 150 124
eftir árum og svæðum. Meðaltal slægðrar þyngdar (g) í 5 cm lengdarflokkum þessi ár og svæði saman:
round(t(t(tapply(k$slaegt,
cut(k$lengd, seq(40, 120, by = 5), right = FALSE), mean))))
## [,1]
## [40,45) 756
## [45,50) 910
## [50,55) 1171
## [55,60) 1480
## [60,65) 1861
## [65,70) 2285
## [70,75) 2788
## [75,80) 3379
## [80,85) 4043
## [85,90) 4789
## [90,95) 5741
## [95,100) 6802
## [100,105) 7846
## [105,110) 9061
## [110,115) 10125
## [115,120) 10709
Vistum meðaltöl, skoðum gögnin og fellum einfalt samband lengdar og þyngdar að þeim fyrir mismunandi tímabil:
# meðalþyngdir í 5 cm lengdarflokkum
mweights <- data.frame(le = seq(42.5, 117.5, by = 5),
mw = tapply(k$slaegt,
cut(k$lengd, seq(40, 120, by = 5), right = FALSE), mean))
# eitt samband fyrir all tímabilið öll svæði
fit.all <- lm(log(slaegt) ~ log(lengd), k)
lw.all <- fit.all$coeff
lw.all[1] <- exp(lw.all[1])
# eitt samband fyrir árið í fyrra
fit2014 <- lm(log(slaegt) ~ log(lengd),
subset = ar == 2014, k)
lw2014 <- fit2014$coeff
lw2014[1] <- exp(lw2014[1])
## eldra samband
## úr pósti til Sindra frá því 2006
lw.old <- c(0.0136, 2.86)
names(lw.all) <- names(lw2014) <- names(lw.old) <- c("a", "b")
Þegar sambandi lengdar og þyngdar er lýst með W = a*L^b, eru margfaldari og veldisvísir sambands sem fellt er að gögnum allt tímabilið 2005-2014:
round(lw.all, 4)
## a b
## 0.0143 2.8513
aðeins fyrir árið 2014:
round(lw2014, 4)
## a b
## 0.0201 2.7764
og til samanburðar eldra samband:
lw.old
## a b
## 0.0136 2.8600
Tölfræðileg ‘diagnóstík’ heildarsambandsins:
summary(fit.all)
##
## Call:
## lm(formula = log(slaegt) ~ log(lengd), data = k)
##
## Residuals:
## Min 1Q Median 3Q Max
## -0.53457 -0.05913 0.00130 0.05900 0.38035
##
## Coefficients:
## Estimate Std. Error t value Pr(>|t|)
## (Intercept) -4.249280 0.024598 -172.7 <2e-16 ***
## log(lengd) 2.851314 0.005736 497.1 <2e-16 ***
## ---
## Signif. codes: 0 '***' 0.001 '**' 0.01 '*' 0.05 '.' 0.1 ' ' 1
##
## Residual standard error: 0.0912 on 6761 degrees of freedom
## Multiple R-squared: 0.9734, Adjusted R-squared: 0.9734
## F-statistic: 2.471e+05 on 1 and 6761 DF, p-value: < 2.2e-16
Dreifingar lengdar og slægðrar þyngdar, ásamt meðaltölum í 5 cm lengdarflokkum, og ásamt ferlum sem byggja annars vegar á öllum sýnum og hins vegar sýnum frá 2014:
x <- 40:120
plot(k$lengd, k$slaegt, type = "n",
xlab = "lengd (cm)", ylab = "slægð þyngd (g)")
grid()
points(jitter(k$lengd), k$slaegt, cex = 0.75, col = "grey")
lines(x, lw.all[1]*x^lw.all[2], col = "royalblue3", lwd = 3)
lines(x, lw2014[1]*x^lw2014[2], col = "red", lwd = 3)
segments(mweights$le-2.5, mweights$mw,
mweights$le+2.5, mweights$mw, col = "darkgreen", lwd = 2)
legend(40, 14500,
legend =
c("2005-2014", "2014", "5 cm meðaltöl"),
lty = c(rep(1, 3), NA), lwd = c(3, 3, 2),
col = c("royalblue3", "red", "darkgreen"), bg = "white")
Unnið í R:
sessionInfo()
## R version 3.1.3 (2015-03-09)
## Platform: x86_64-redhat-linux-gnu (64-bit)
## Running under: Fedora 21 (Twenty One)
##
## locale:
## [1] LC_CTYPE=is_IS.UTF-8 LC_NUMERIC=C
## [3] LC_TIME=is_IS.UTF-8 LC_COLLATE=is_IS.UTF-8
## [5] LC_MONETARY=is_IS.UTF-8 LC_MESSAGES=is_IS.UTF-8
## [7] LC_PAPER=is_IS.UTF-8 LC_NAME=C
## [9] LC_ADDRESS=C LC_TELEPHONE=C
## [11] LC_MEASUREMENT=is_IS.UTF-8 LC_IDENTIFICATION=C
##
## attached base packages:
## [1] splines stats graphics grDevices utils datasets methods
## [8] base
##
## other attached packages:
## [1] geo_1.4-0 mapdata_2.2-3 maps_2.3-9 fjolst_1.0
##
## loaded via a namespace (and not attached):
## [1] digest_0.6.8 evaluate_0.5.5 formatR_1.0 htmltools_0.2.6
## [5] knitr_1.9 rmarkdown_0.5.1 stringr_0.6.2 tools_3.1.3
## [9] yaml_2.1.13
, með þessari útgáfu gagnapakkans ‘fjolst’:
packageDescription("fjolst")
## Package: fjolst
## Type: Package
## Title: What the package does (short line)
## Version: 1.0
## Date: <c3><be>ri mar 31 12:08:12 GMT 2015
## Depends: R (>= 2.10)
## LazyData: yes
## Author: H<c3><b6>skuldur Bj<c3><b6>rnsson
## Maintainer: Who to complain to <yourfault@somewhere.net>
## Description: More about what it does (maybe more than one line)
## License: What license is it under?
## Packaged: 2015-04-17 20:00:32 UTC; gunnaro
## Built: R 3.1.2; ; 2015-04-17 20:01:30 UTC; unix
##
## -- File: /usr/local/lib/R/site/3.1/x86_64/library/fjolst/Meta/package.rds