Script seleção de modelos GRUPO
Escolhi as árvores estratificadas, entretanto, em campo algumas não leg estavam mortas, outras emaranhadas com outra copa impossibilitando a visualização e algumas não foram encontradas. Algumas árvores estavam em parcelas que ainda não foram recenseadas e o acesso estava muito difícil. Acima de 450 de dap, a grande maioria é balizia e do outro grupo há alguns Calophyllum e Ocotea.
Testando efeito do grupo
Comparando com anova e AIC, há interação…
Os AICs foram similares, fiquei com a regressão simples. Além disso, o erro da parâmetro b na MM foi enorme (26!).
plot(rm.copa~dap, col=c("red", "blue")[as.factor(copa$Grupo)],pch=19, xlab= "DAP (cm)", ylab= "raio da copa (m)")
## rm.copa é o raio em metros da copa e o dap é o dap em cm. Copa$grupo é a coluna de dados com o fator leg x nleg
locator(1)->locxy
## aqui vc clica no ponto xy no gráfico onde deseja colocar a legenda e guarda no objeto locxy.
legend(locxy, legend=c("leguminosae", "outras familias"), col=c("red", "blue"), pch=c(19,19))
## inclui a legenda na posição locxy
Como eram poucos dados plotei todos leg e não leg juntas… \
Comparei 5 modelos: \ 1)O mais simples :
copa.vero1<-function(m=2.542,s=1.96)
{
-sum(stats::dnorm(alo$Raio.copa.m, m, s, log=TRUE))
}
copa1<-mle(copa.vero1)
2) Com a função original:
copa.vero2<-function(a=0,b=1,s=1.96)
{
m = a+b*((0.1*alo$Dap.mm)^0.5/2)
-sum(stats::dnorm(x=alo$Raio.copa.m,mean=m,sd=s,log=T))
}
copa2←mle(copa.vero2) 3) Com outra função, sem elevar a 0.5:
copa.vero3<-function(a=0,b=1,s=1.96)
{
m = a+b*((0.1*alo$Dap.mm)/2)
-sum(stats::dnorm(x=alo$Raio.copa.m,mean=m,sd=s,log=T))
}
copa3←mle(copa.vero3) 4) Elevando ao quadrado sem dividir:
copa.vero4<-function(a=0,b=1,s=1.96)
{
m = a+b*(0.1*alo$Dap.mm)^2
-sum(stats::dnorm(x=alo$Raio.copa.m,mean=m,sd=s,log=T))
}
copa4←mle(copa.vero4)
5) Com média e desvio variando pela mesma função:
copa.vero5<-function(a=1.43,b=0.002,s1=1,s2=2)
{
m = a+b*((0.1*alo$Dap.mm)/2)
s = s1+s2*((0.1*alo$Dap.mm)/2)
-sum(stats::dnorm(x=alo$Raio.copa.m,mean=m,sd=s,log=T))
}
copa5←mle(copa.vero5)
| AIC | |
| copa1 | 111.70791 |
| copa2 | 71.15744 |
| copa3 | 68.34604 |
| copa4 | 77.40857 |
| copa5 | 63.01979 |
* Como a curiosidade é grande rodei alguns nulos alterando a função r.copa para o modelo 3 e o resultado foi:
Continuo não entendendo porque os modelos tem parâmetros como “0.01*” e “/2”. Não fazem o minimo sentido. Esses são os parâmetros que vc. quer estimar… eles estão incluídos no “a” e “b” da regressão linear…
Acho que devemos nos limitar nesse momento apenas ao lm. Minhas sugestões talvez não tenham ficado claras.
1. passo: Confrontar o modelo linear com o fator “leg” e “nleg”, com o modelo linear se esse fator, se não me engano vc. chamou “Grupo”.
use: summary(); anova() para ver os modelos separadamente e depois anova ou AICtab para confrontá-los. Se no modelo um há interação significa que leg e nleg devem ser tratados diferentemente na hora de estimar a copa. Caso o modelo só com o dap seja melhor, então podemos fazer um modelo único.
2.passo: decidido qual o modelo base, devemos estimar os parâmetros (leg/nleg junto ou isolado dependendo do passo anterior)
copa~a+ b* dap
3. estimado a e b voltamos ao modelo nulo para ajustá-lo