
Eu não entendi o que você quer fazer. No seu exemplo, o primeiro elemento é besouro, mas você retornou barata. Os valores de talhao e area nnao parecem bater com os dados do seu exemplo. Como para Formiga o talhão de volta redonda seria 73, se na base original os valores são 74 e 15? Abc Manoel
tableFE
Bichos Talhao Projeto Injuria Area Besouros 73 Abre Campo 25 0.0 Barata 15 Volta Redonda 100 0.0 Formiga 74 Vitoria 0 12.5 Barata 75 Abre Campo 25 0.0 Formiga 15 Volta Redonda 0 7.5 Besouros 15 Vitoria 100 0.0 Formiga 15 Abre Campo 0 1.5 Besouros 73 Volta Redonda 50 0.0 Barata 15 Vitoria 25 0.0 Formiga 15 Abre Campo 0 23.8 Barata 73 Volta Redonda 25 0.0 Formiga 15 Vitoria 0 5.3 Besouros 73 Abre Campo 25 0.0 Formiga 74 Volta Redonda 0 2.0 Formiga 74 Vitoria 0 11.3 Mas seus resultados não têm a média 2016-01-21 11:07 GMT-02:00 ASANTOS <alexandresantosbr@yahoo.com.br>:
Caros listeiros,
Estou tentando criar uma função aggPestFE que para uma primeira variável se for "Formiga", vai tirar a media da coluna 5, mas se for "Besouros" ou "Barata" vai tira a média da coluna 4. Sendo que quero o resultado dado em forma de list, ficando o meu resultado:
[[1]] [1] "Barata"
[[1]][[3]] Projeto Talhao Injuria(%) 1 Abre Campo 15 25 2 Volta Redonda 73 0 3 Vitoria 74 50
[[2]] [1] "Besouros"
[[1]][[3]] Projeto Talhao Injuria(%) 1 Abre Campo 15 0 2 Volta Redonda 73 25 3 Vitoria 74 50
[[2]] [1] "Formiga"
[[1]][[3]] Projeto Talhao Area (m2) 1 Abre Campo 15 12.5 2 Volta Redonda 73 1.5 3 Vitoria 74 23.8
Para isso estou tentando:
##Dados artificiais
Bichos<-c("Besouros","Barata","Formiga","Barata","Formiga","Besouros","Formiga",
"Besouros","Barata","Formiga","Barata","Formiga","Besouros","Formiga","Formiga")
Talhao<-c(73,15,74,75,15,15,15,73,15,15,73,15,73,74,74)
Projeto<-c("Abre Campo", "Volta Redonda","Vitoria","Abre Campo", "Volta Redonda", "Vitoria","Abre Campo", "Volta Redonda","Vitoria","Abre Campo", "Volta Redonda", "Vitoria","Abre Campo", "Volta Redonda","Vitoria")
Injuria<-c(25,100,0,25,0,100,0,50,25,0,25,0,25,0,0)
Area<-c(0,0,12.5,0,7.5,0,1.5,0,0,23.8,0,5.3,0,2.0,11.3)
tableFE<-data.frame(Bichos, Talhao, Projeto, Injuria, Area) ## Banco de dados criado
##Função
aggPestFE<-function(x, db=tableFE){
mylist <- list()
if (tableFE[,1] != "Formigas") {
for (i in length(tableFE[,1])){
GP_FE2<-tableFE[tableFE[,1]==tableFE[i],] aggdata <-aggregate(GP_FE2[,4], list(GP_FE2[,3],GP_FE2[,2]), mean) colnames(aggdata)<-c("Regional","Projeto","Talhão","Injúria média (%)") tmp <- list(aggdata) mylist[NPRAGS[i]] <- tmp result<-mylist return(result) }
else if (tableFE[,1] == "Formigas") {
GP_FE2<-[tableFE[,1] aggdata <-aggregate(GP_FE2[,5], list(GP_FE2[,3],GP_FE2[,2]), mean) colnames(aggdata)<-c("Regional","Projeto","Talhão","Injúria média (%)") tmp <- list(aggdata) mylist[NPRAGS[i]] <- tmp result<-mylist return(result) } }
RES<-list(result,aggdata3) result<-RES return(result) }
#Teste aggPestFE(tableFE) #
Sem sucesso, alguém poderia me ajudar?
Obrigado e abraços,
-- ====================================================================== Alexandre dos Santos Proteção Florestal IFMT - Instituto Federal de Educação, Ciência e Tecnologia de Mato Grosso Campus Cáceres Caixa Postal 244 Avenida dos Ramires, s/n Bairro: Distrito Industrial Cáceres - MT CEP: 78.200-000 Fone: (+55) 65 8132-8112 (TIM) (+55) 65 9686-6970 (VIVO) e-mails:alexandresantosbr@yahoo.com.br alexandre.santos@cas.ifmt.edu.br Lattes: http://lattes.cnpq.br/1360403201088680 OrcID: orcid.org/0000-0001-8232-6722 Researchgate: https://www.researchgate.net/profile/Alexandre_Santos10 LinkedIn: https://br.linkedin.com/in/alexandre-dos-santos-87961635 ======================================================================
_______________________________________________ R-br mailing list R-br@listas.c3sl.ufpr.br https://listas.inf.ufpr.br/cgi-bin/mailman/listinfo/r-br Leia o guia de postagem (http://www.leg.ufpr.br/r-br-guia) e fornea cdigo mnimo reproduzvel.
-- Manoel Galdino https://sites.google.com/site/galdinomcz/