setwd("C:/Users/813814/Documents/aula 2 ema3")
getwd()
## [1] "C:/Users/813814/Documents/aula 2 ema3"
dir()
## [1] "AULA2EMA3.Rmd"       "sar-areas AAALS.csv" "sar-areas.csv"      
## [4] "sar-model-data.csv"
#install.packages("knitr")
library(knitr)

#install.packages("tidyr")
library(tidyr)
areas<-read.csv("sar-areas.csv", header=FALSE)

Parâmetros dados

parametros<-read.csv("sar-model-data.csv", header=FALSE)
colnames(parametros)<-c("modelos", "b0", "b1", "b2")

Visualizar os parâmetros

kable(parametros)
modelos b0 b1 b2
Power 20.81 0.1896 NA
PowerQuadratic 1.35 0.1524 8.1e-03
Logarithmic 14.36 21.1600 NA
MichaelisMenten 85.91 42.5700 NA
Lomolino 1082.45 1.5900 3.9e+08

o agora é calcularmos a riqueza predita por cada um dos modelos para cada uma das áreas, com base nos parâmetros dados acima. Para isso iremos criar funções para cada um dos modelos (ou seja, 5 ao todo), que calculam a riqueza para cada uma das áreas que temos (ou outras tantas que podemos entrar!).

potencia<-function(b0, Areas, b1){
b0 * Areas^b1
}
pot_quadrada<-function(b0, b1, Areas, b2){
10^(b0 + b1 * log10(Areas) + b2 * log10(Areas)^2)
}
loga<-function(b0, b1, Areas){
b0 + b1 * log10(Areas)
}
MM<-function(b0, Areas, b1){
b0 * (Areas / (b1 + Areas))
}
Lomo<-function(b0, b1, b2, Areas){
b0/(1 + b1^log10(b2/Areas))
}

Utilizando as funções que criamos acima, iremos agora calcular as riquezas com base nos parâmetros e nas áreas dadas.

mod1<-potencia(parametros[1,"b0"], areas, parametros[1,"b1"])
mod2<-pot_quadrada(parametros[2,"b0"], parametros[2,"b1"], areas, parametros[2,"b2"])
mod3<-loga(parametros[3,"b0"], parametros[3,"b1"], areas)
mod4<-MM(parametros[4,"b0"], areas, parametros[4,"b1"])
mod5<-Lomo(parametros[5,"b0"], parametros[5,"b1"], parametros[5,"b2"], areas)

Organizando os resultados

mods<-cbind(mod1, mod2, mod3, mod4, mod5)
stdev<-apply(mods,1,sd)
media<-rowSums(mods)/5
mods<-cbind(areas, mods, media, stdev, stdev/media)
colnames(mods)<-c("Areas", "Power", "PowerQuadratic", "Logarithmic", "Michaelis-Menten", "Lomolino", "M")

Visualizando os resultados

kable(mods)
Areas Power PowerQuadratic Logarithmic Michaelis-Menten Lomolino M NA NA
1.00 20.81000 22.38721 14.36000 1.971770 19.77805 15.86141 8.330532 0.5252076
5.20 28.44633 29.05838 29.51063 9.351727 27.36975 24.74736 8.643763 0.3492801
10.95 32.76008 32.89711 36.35400 17.576878 31.66880 30.25138 7.300472 0.2413270
152.30 53.96498 52.62999 60.54593 67.142675 52.73406 57.40353 6.347044 0.1105689
597.60 69.93258 68.47995 73.10885 80.197160 68.39243 72.02219 4.952274 0.0687604
820.00 74.25594 72.91834 76.01630 81.670125 72.59037 75.49021 3.708610 0.0491270
989.80 76.95341 75.71906 77.74578 82.367483 75.19974 77.59709 2.849008 0.0367154
1232.50 80.22048 79.14344 79.76105 83.041774 78.34964 80.10328 1.786207 0.0222988
15061.00 128.94163 134.30311 102.76339 85.667859 123.83319 115.10184 20.341225 0.1767237

Terminamos agora com a visualização gráfica das curvas, para que possamos analisar as diferenças entre as predições dos diferentes modelos. Vamos ver graficamente o resultado dos nossos modelos

plot(mods$Areas, mods$PowerQuadratic, xlab="Áreas", ylab="Espécies" )
points(mods$Areas, mods$Power, col="red")
points(mods$Areas, mods$Logarithmic, col="blue")
points(mods$Areas, mods$'Michaelis-Menten', col="purple")
points(mods$Areas, mods$Lomolino, col="brown")

o agora é calcularmos a riqueza predita por cada um dos modelos para cada uma das áreas, com base nos parâmetros dados acima. Para isso iremos criar funções para cada um dos modelos (ou seja, 5 ao todo), que calculam a riqueza para cada uma das áreas que temos (ou outras tantas que podemos entrar!).

potencia<-function(b0, Areas, b1){
b0 * Areas^b1
}
pot_quadrada<-function(b0, b1, Areas, b2){
10^(b0 + b1 * log10(Areas) + b2 * log10(Areas)^2)
}
loga<-function(b0, b1, Areas){
b0 + b1 * log10(Areas)
}
MM<-function(b0, Areas, b1){
b0 * (Areas / (b1 + Areas))
}
Lomo<-function(b0, b1, b2, Areas){
b0/(1 + b1^log10(b2/Areas))
}

Utilizando as funções que criamos acima, iremos agora calcular as riquezas com base nos parâmetros e nas áreas dadas.

mod1<-potencia(parametros[1,"b0"], areas, parametros[1,"b1"])
mod2<-pot_quadrada(parametros[2,"b0"], parametros[2,"b1"], areas, parametros[2,"b2"])
mod3<-loga(parametros[3,"b0"], parametros[3,"b1"], areas)
mod4<-MM(parametros[4,"b0"], areas, parametros[4,"b1"])
mod5<-Lomo(parametros[5,"b0"], parametros[5,"b1"], parametros[5,"b2"], areas)

Organizando os resultados

mods<-cbind(mod1, mod2, mod3, mod4, mod5)
stdev<-apply(mods,1,sd)
media<-rowSums(mods)/5
mods<-cbind(areas, mods, media, stdev, stdev/media)
colnames(mods)<-c("Areas", "Power", "PowerQuadratic", "Logarithmic", "Michaelis-Menten", "Lomolino", "Medias", "Desvio Padrão")

Visualizando os resultados

kable(mods)
Areas Power PowerQuadratic Logarithmic Michaelis-Menten Lomolino Medias Desvio Padrão NA
1.00 20.81000 22.38721 14.36000 1.971770 19.77805 15.86141 8.330532 0.5252076
5.20 28.44633 29.05838 29.51063 9.351727 27.36975 24.74736 8.643763 0.3492801
10.95 32.76008 32.89711 36.35400 17.576878 31.66880 30.25138 7.300472 0.2413270
152.30 53.96498 52.62999 60.54593 67.142675 52.73406 57.40353 6.347044 0.1105689
597.60 69.93258 68.47995 73.10885 80.197160 68.39243 72.02219 4.952274 0.0687604
820.00 74.25594 72.91834 76.01630 81.670125 72.59037 75.49021 3.708610 0.0491270
989.80 76.95341 75.71906 77.74578 82.367483 75.19974 77.59709 2.849008 0.0367154
1232.50 80.22048 79.14344 79.76105 83.041774 78.34964 80.10328 1.786207 0.0222988
15061.00 128.94163 134.30311 102.76339 85.667859 123.83319 115.10184 20.341225 0.1767237

Terminamos agora com a visualização gráfica das curvas, para que possamos analisar as diferenças entre as predições dos diferentes modelos. Vamos ver graficamente o resultado dos nossos modelos

plot(mods$Areas, mods$PowerQuadratic, xlab="Áreas", ylab="Espécies" )
points(mods$Areas, mods$Power, col="red")
points(mods$Areas, mods$Logarithmic, col="blue")
points(mods$Areas, mods$'Michaelis-Menten', col="purple")
points(mods$Areas, mods$Lomolino, col="brown")

Note que a relação aqui ficou log10 x log10 Agora iremos fazer um boxplot para vermos um pouco da variação que os modelos geram na previsão de riqueza das ilhas

long<-gather(mods[,2:6])
l<-cbind(long, areas)
kable(l)
key value V1
Power 20.810000 1.00
Power 28.446335 5.20
Power 32.760083 10.95
Power 53.964975 152.30
Power 69.932576 597.60
Power 74.255938 820.00
Power 76.953411 989.80
Power 80.220485 1232.50
Power 128.941632 15061.00
PowerQuadratic 22.387211 1.00
PowerQuadratic 29.058384 5.20
PowerQuadratic 32.897114 10.95
PowerQuadratic 52.629993 152.30
PowerQuadratic 68.479955 597.60
PowerQuadratic 72.918336 820.00
PowerQuadratic 75.719057 989.80
PowerQuadratic 79.143442 1232.50
PowerQuadratic 134.303109 15061.00
Logarithmic 14.360000 1.00
Logarithmic 29.510631 5.20
Logarithmic 36.354003 10.95
Logarithmic 60.545930 152.30
Logarithmic 73.108848 597.60
Logarithmic 76.016301 820.00
Logarithmic 77.745784 989.80
Logarithmic 79.761051 1232.50
Logarithmic 102.763387 15061.00
Michaelis-Menten 1.971770 1.00
Michaelis-Menten 9.351727 5.20
Michaelis-Menten 17.576878 10.95
Michaelis-Menten 67.142675 152.30
Michaelis-Menten 80.197160 597.60
Michaelis-Menten 81.670125 820.00
Michaelis-Menten 82.367483 989.80
Michaelis-Menten 83.041774 1232.50
Michaelis-Menten 85.667859 15061.00
Lomolino 19.778052 1.00
Lomolino 27.369748 5.20
Lomolino 31.668800 10.95
Lomolino 52.734060 152.30
Lomolino 68.392427 597.60
Lomolino 72.590374 820.00
Lomolino 75.199737 989.80
Lomolino 78.349642 1232.50
Lomolino 123.833194 15061.00
boxplot(value ~ V1, data=l, xlab="Tamanho das ilhas", ylab="Número de espécies")

P1: Agora que avaliamos os modelos para as ilhas do exercício, vamos assumir que estamos pensando em amostrar outras 4 ilhas, cujos tamanhos são 20, 100, 1000 e 10000 ha. Como os modelos se comportam para ilhas com estes tamanhos? Onde vai haver a maior diferença entre os modelos? Como isso pode afetar a utilização destes modelos para a tomada de decisão, caso estejamos por exemplo, interessados em entender um determinado impacto nestas ilhas?

areas<-read.csv("sar-areas AAALS.csv", header=FALSE)

Parâmetros dados

parametros<-read.csv("sar-model-data.csv", header=FALSE)
colnames(parametros)<-c("modelos", "b0", "b1", "b2")

Visualizar os parâmetros

kable(parametros)
modelos b0 b1 b2
Power 20.81 0.1896 NA
PowerQuadratic 1.35 0.1524 8.1e-03
Logarithmic 14.36 21.1600 NA
MichaelisMenten 85.91 42.5700 NA
Lomolino 1082.45 1.5900 3.9e+08

o agora é calcularmos a riqueza predita por cada um dos modelos para cada uma das áreas, com base nos parâmetros dados acima. Para isso iremos criar funções para cada um dos modelos (ou seja, 5 ao todo), que calculam a riqueza para cada uma das áreas que temos (ou outras tantas que podemos entrar!).

potencia<-function(b0, Areas, b1){
b0 * Areas^b1
}
pot_quadrada<-function(b0, b1, Areas, b2){
10^(b0 + b1 * log10(Areas) + b2 * log10(Areas)^2)
}
loga<-function(b0, b1, Areas){
b0 + b1 * log10(Areas)
}
MM<-function(b0, Areas, b1){
b0 * (Areas / (b1 + Areas))
}
Lomo<-function(b0, b1, b2, Areas){
b0/(1 + b1^log10(b2/Areas))
}

Utilizando as funções que criamos acima, iremos agora calcular as riquezas com base nos parâmetros e nas áreas dadas.

mod1<-potencia(parametros[1,"b0"], areas, parametros[1,"b1"])
mod2<-pot_quadrada(parametros[2,"b0"], parametros[2,"b1"], areas, parametros[2,"b2"])
mod3<-loga(parametros[3,"b0"], parametros[3,"b1"], areas)
mod4<-MM(parametros[4,"b0"], areas, parametros[4,"b1"])
mod5<-Lomo(parametros[5,"b0"], parametros[5,"b1"], parametros[5,"b2"], areas)

Organizando os resultados

mods<-cbind(mod1, mod2, mod3, mod4, mod5)
stdev<-apply(mods,1,sd)
media<-rowSums(mods)/5
mods<-cbind(areas, mods, media, stdev, stdev/media)
colnames(mods)<-c("Areas", "Power", "PowerQuadratic", "Logarithmic", "Michaelis-Menten", "Lomolino", "M")

Visualizando os resultados

kable(mods)
Areas Power PowerQuadratic Logarithmic Michaelis-Menten Lomolino M NA NA
20 36.72378 36.47436 41.88979 27.46044 35.61923 35.63352 5.192206 0.1457113
100 49.82784 48.66313 56.68000 60.25812 48.64275 52.81437 5.336363 0.1010400
1000 77.10314 75.87523 77.84000 82.40214 75.34435 77.71297 2.800179 0.0360323
10000 119.30869 122.80046 99.00000 85.54583 115.07184 108.34537 15.664805 0.1445821

Terminamos agora com a visualização gráfica das curvas, para que possamos analisar as diferenças entre as predições dos diferentes modelos. Vamos ver graficamente o resultado dos nossos modelos

plot(mods$Areas, mods$PowerQuadratic, xlab="Áreas", ylab="Espécies" )
points(mods$Areas, mods$Power, col="red")
points(mods$Areas, mods$Logarithmic, col="blue")
points(mods$Areas, mods$'Michaelis-Menten', col="purple")
points(mods$Areas, mods$Lomolino, col="brown")

o agora é calcularmos a riqueza predita por cada um dos modelos para cada uma das áreas, com base nos parâmetros dados acima. Para isso iremos criar funções para cada um dos modelos (ou seja, 5 ao todo), que calculam a riqueza para cada uma das áreas que temos (ou outras tantas que podemos entrar!).

potencia<-function(b0, Areas, b1){
b0 * Areas^b1
}
pot_quadrada<-function(b0, b1, Areas, b2){
10^(b0 + b1 * log10(Areas) + b2 * log10(Areas)^2)
}
loga<-function(b0, b1, Areas){
b0 + b1 * log10(Areas)
}
MM<-function(b0, Areas, b1){
b0 * (Areas / (b1 + Areas))
}
Lomo<-function(b0, b1, b2, Areas){
b0/(1 + b1^log10(b2/Areas))
}

Utilizando as funções que criamos acima, iremos agora calcular as riquezas com base nos parâmetros e nas áreas dadas.

mod1<-potencia(parametros[1,"b0"], areas, parametros[1,"b1"])
mod2<-pot_quadrada(parametros[2,"b0"], parametros[2,"b1"], areas, parametros[2,"b2"])
mod3<-loga(parametros[3,"b0"], parametros[3,"b1"], areas)
mod4<-MM(parametros[4,"b0"], areas, parametros[4,"b1"])
mod5<-Lomo(parametros[5,"b0"], parametros[5,"b1"], parametros[5,"b2"], areas)

Organizando os resultados

mods<-cbind(mod1, mod2, mod3, mod4, mod5)
stdev<-apply(mods,1,sd)
media<-rowSums(mods)/5
mods<-cbind(areas, mods, media, stdev, stdev/media)
colnames(mods)<-c("Areas", "Power", "PowerQuadratic", "Logarithmic", "Michaelis-Menten", "Lomolino", "Medias", "Desvio Padrão")

Visualizando os resultados

kable(mods)
Areas Power PowerQuadratic Logarithmic Michaelis-Menten Lomolino Medias Desvio Padrão NA
20 36.72378 36.47436 41.88979 27.46044 35.61923 35.63352 5.192206 0.1457113
100 49.82784 48.66313 56.68000 60.25812 48.64275 52.81437 5.336363 0.1010400
1000 77.10314 75.87523 77.84000 82.40214 75.34435 77.71297 2.800179 0.0360323
10000 119.30869 122.80046 99.00000 85.54583 115.07184 108.34537 15.664805 0.1445821

Terminamos agora com a visualização gráfica das curvas, para que possamos analisar as diferenças entre as predições dos diferentes modelos. Vamos ver graficamente o resultado dos nossos modelos

plot(mods$Areas, mods$PowerQuadratic, xlab="Áreas", ylab="Espécies" )
points(mods$Areas, mods$Power, col="red")
points(mods$Areas, mods$Logarithmic, col="blue")
points(mods$Areas, mods$'Michaelis-Menten', col="purple")
points(mods$Areas, mods$Lomolino, col="brown")

Note que a relação aqui ficou log10 x log10 Agora iremos fazer um boxplot para vermos um pouco da variação que os modelos geram na previsão de riqueza das ilhas

long<-gather(mods[,2:6])
l<-cbind(long, areas)
kable(l)
key value V1
Power 36.72378 20
Power 49.82784 100
Power 77.10314 1000
Power 119.30869 10000
PowerQuadratic 36.47436 20
PowerQuadratic 48.66313 100
PowerQuadratic 75.87523 1000
PowerQuadratic 122.80046 10000
Logarithmic 41.88979 20
Logarithmic 56.68000 100
Logarithmic 77.84000 1000
Logarithmic 99.00000 10000
Michaelis-Menten 27.46044 20
Michaelis-Menten 60.25812 100
Michaelis-Menten 82.40214 1000
Michaelis-Menten 85.54583 10000
Lomolino 35.61923 20
Lomolino 48.64275 100
Lomolino 75.34435 1000
Lomolino 115.07184 10000
boxplot(value ~ V1, data=l, xlab="Tamanho das ilhas", ylab="Número de espécies")