Srs(as), boa noite.
Sou iniciante no R. Como faço para ajustar um modelo de 2º grau para os dados abaixo. Antecipademante agradeco
a<-read.table("dose_fcr_ph2.txt", h=T)
names(a)
tra<-as.factor(a$trat) #usado apenas para verificar pressupostos da anova
fcr<-as.factor(a$fcr) #4 niveis (1500, 2000, 2500 e 3000)
dos<-as.factor(a$dose) #3 niveis (0, 1, 2), tratado como qualitativo
ph<-as.numeric(a$ph)
b<-data.frame(tra,fcr,dos,ph)
b
> fcr
 [1] 1500 1500 1500 2000 2000 2000 2500 2500 2500 3000 3000 3000 1500 1500 1500
[16] 2000 2000 2000 2500 2500 2500 3000 3000 3000 1500 1500 1500 2000 2000 2000
[31] 2500 2500 2500 3000 3000 3000
> dos
 [1] 0 0 0 0 0 0 0 0 0 0 0 0 1 1 1 1 1 1 1 1 1 1 1 1 2 2 2 2 2 2 2 2 2 2 2 2
> ph
 [1] 5.86 6.19 6.87 5.87 6.30 6.30 6.05 6.37 7.03 5.69 5.72 6.52 6.05 6.02 6.09
[16] 6.19 6.73 6.80 7.08 7.08 7.08 9.25 8.81 9.06 9.25 9.24 8.81 9.13 8.97 9.36
[31] 9.05 8.99 8.93 9.21 8.90 7.42
ane2<-aov(ph~dos*fcr, data=b)
summary(ane2)#tenho interesse no desdobramento
#            Df Sum Sq Mean Sq F value   Pr(>F)   
#dos          2  45.25  22.625 137.133 7.37e-14 ***
#fcr          3   2.44   0.812   4.921  0.00836 **
#dos:fcr      6  14.08   2.347  14.223 7.24e-07 ***
#Residuals   24   3.96   0.165                    
ane3<-aov(ph~dos/fcr, data=b) #guarda efeitos aninhados
summary(ane3, split=list("dos:fcr"=list("dos0"=c(1,4,7), "dos1"=c(2,5,8), "dos2"=c(3,6,9))))
#              Df  Sum Sq     Meam Sq     F value   Pr(>F)   
#dos            2    45.10      22.550    43.910    9.56e-09 ***
#dos:fcr        9    8.69        0.966    1.881     0.10465   
#dos:fcr: dos0  3    0.42        0.140    0.272     0.84507   
#dos:fcr: dos1  3    7.50        2.499    4.866     0.00877 **
#dos:fcr: dos2  3    0.78        0.259    0.503     0.68359   
#Residuals       24   12.33      0.514                     
#Signif. codes:  0 ‘***’ 0.001 ‘**’ 0.01 ‘*’ 0.05 ‘.’ 0.1 ‘ ’ 1
#---------------------------------------------------------
#Ajustando modelo de 2 grau
> m1<-aov(ph~-1+ dos/(fcr+I(fcr^2)), data=b)# aparece a mesagem de erro abaixo
#Erro em `contrasts<-`(`*tmp*`, value = contr.funs[1 + isOF[nn]]) :
#contrastes podem ser aplicados apenas a fatores com 2 ou mais níveis
#Além disso: Mensagens de aviso perdidas:
#In Ops.factor(fcr, 2) : ^ not meaningful for factors
 # está faltando alguma informação no "comando"?


Odirley R. Campos
Engenheiro Agrônomo UFV/MG