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")