Caros,

Tenho dois arquivos. Um deles, com milhares de linhas devido a replicação temporal, inclui três colunas (campanha, transecto, parcela). O segundo, contém informação sobre variáveis medidas em cada parcela (um único valor).

Eu preciso substituir os dados das parcelas (primeiro arquivo) por valores das variáveis (segundo arquivo) condicionando a que transecto a parcela pertença. Um exemplo abaixo para uma variável, mas que não trabalha corretamente.

coletas<-data.frame (campanha=c(gl(4,8,64,labels=c("C1","C2","C3","C4"))),transecto=c(gl(8,4,64,labels=c("T1","T2","T3","T4","T5","T6","T7","T8"))),parcela=c(gl(4,1,64,labels=c("P1","P2","P3","P4"))))

dados<- data.frame (transecto=c(gl(8,4,32,labels=c("T1","T2","T3","T4","T5","T6","T7","T8"))), parcela=c(gl(4,1,32,labels=c("P1","P2","P3","P4"))), alt=rnorm(32))

x.temp<-coletas
for (i in 1:length(levels(coletas$transecto))){
    x.temp[which(coletas$parcela[i,]==dados$parcela[i,])] <- dados$Alt[i,]
    }
x.temp
Error in coletas$parcela[i, ] : incorrect number of dimensions

Obrigado.- rogério