Nem consigo executar sua função de begar o banco, diz q não existe GET cheguei a carrega o pacote XML, mas tbm não funfou
2016-01-21 18:28 GMT-02:00 ASANTOS <[email protected]>: > Éder, > > A sua solução não funcionou com meu exemplo real e não consigo achar o > problema, sendo que: > > ## Função de leitura do banco de dados > readFE<- function (x, URL = ""){ > FILE <- GET(url=URL) > tables <- getNodeSet(htmlParse(FILE), "//table") > FE_tab <- readHTMLTable(tables[[1]], > header = c("empresa","desc_projeto","desc_regiao", > > "cadastrador_por","cod_talhao","descricao", > > "formiga_area","qtd_destruido","latitude", > "longitude","data_cadastro"), > colClasses = > c("character","character","character", > "character","numeric","character", > "numeric","numeric","numeric", > "numeric","character"), > trim = TRUE, stringsAsFactors = FALSE > ) > x<-NULL > results <- x > x<-FE_tab[-(1),] > results <- x > results<-results[!apply(results,1,function(x){any(x=="(NULL)")}),] > results > } > #--# > tableFE<-readFE(URL= > "https://www.dropbox.com/s/znmr0lwda2y6fc5/BD_teste2.html?dl=1" > <https://www.dropbox.com/s/znmr0lwda2y6fc5/BD_teste2.html?dl=1>) > tableFE<-tableFE[1:163,1:11] > head(tableFE) > > ##Agregando os resultados > lista <- split(tableFE, tableFE$descricao) > lapply(lista, function(x) aggregate(x[,7:8], by=list(x[,2]), mean)) ## > Não funciona > > > mas se eu faço item por item funciona e não sei porque, sendo: > > aggregate(lista$`Psilideo-de-Concha`[,7:8], > by=list(lista$`Psilideo-de-Concha`[,2],lista$`Psilideo-de-Concha`[,5]), > mean) > > Poderia me dar mais um help? > > Obrigado, > > 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:[email protected] > [email protected] > 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 > ====================================================================== > > Em 21/01/2016 13:37, Éder Comunello escreveu: > > Senhores, boa tarde! > > Também não entendi direito. Mas talvez a ideia abaixo possa fazer algum > sentido... > > ### <code r> > tableFE <- structure(list(Bichos = structure(c(2L, 1L, 3L, 1L, 3L, 2L, 3L, > 2L, 1L, 3L, 1L, 3L, 2L, 3L, 3L), .Label = c("Barata", "Besouros", > "Formiga"), class = "factor"), Talhao = c(73, 15, 74, 75, 15, > 15, 15, 73, 15, 15, 73, 15, 73, 74, 74), Projeto = structure(c(1L, > 3L, 2L, 1L, 3L, 2L, 1L, 3L, 2L, 1L, 3L, 2L, 1L, 3L, 2L), .Label = c("Abre > Campo", > "Vitoria", "Volta Redonda"), class = "factor"), 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, 11.3)), .Names = > c("Bichos", > "Talhao", "Projeto", "Injuria", "Area"), row.names = c(NA, -15L > ), class = "data.frame") > > lista <- split(tableFE, tableFE$Bichos); lista > > lapply(lista, function(x) aggregate(x[,4:5], by=list(x$Projeto), mean)) > # $Barata > # Group.1 Injuria Area > # 1 Abre Campo 25.0 0 > # 2 Vitoria 25.0 0 > # 3 Volta Redonda 62.5 0 > # > # $Besouros > # Group.1 Injuria Area > # 1 Abre Campo 25 0 > # 2 Vitoria 100 0 > # 3 Volta Redonda 50 0 > # > # $Formiga > # Group.1 Injuria Area > # 1 Abre Campo 0 12.65 > # 2 Vitoria 0 9.70 > # 3 Volta Redonda 0 4.75 > ### </code> > > > ================================================ > Éder Comunello > PhD Student in Agricultural Systems Engineering (USP/Esalq) > Brazilian Agricultural Research Corporation (Embrapa) > Dourados, MS, Brazil [22 16.5'S, 54 49.0'W] > > > > > Em 21 de janeiro de 2016 11:41, Manoel Galdino <[email protected]> > escreveu: > >> 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 < <[email protected]> >> [email protected]>: >> >>> 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 <%28%2B55%29%2065%208132-8112> (TIM) (+55) >>> 65 9686-6970 <%28%2B55%29%2065%209686-6970> (VIVO) >>> e-mails:[email protected] >>> [email protected] >>> 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 >>> [email protected] >>> https://listas.inf.ufpr.br/cgi-bin/mailman/listinfo/r-br >>> Leia o guia de postagem ( <http://www.leg.ufpr.br/r-br-guia> >>> http://www.leg.ufpr.br/r-br-guia) e fornea cdigo mnimo reproduzvel. >> >> >> >> >> -- >> Manoel Galdino >> https://sites.google.com/site/galdinomcz/ >> >> _______________________________________________ >> R-br mailing list >> [email protected] >> 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 forneça >> código mínimo reproduzível. >> > > > > _______________________________________________ > R-br mailing > [email protected]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 forne�a c�digo > m�nimo reproduz�vel. > > > > _______________________________________________ > R-br mailing list > [email protected] > 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 forneça > código mínimo reproduzível. > -- Manoel Galdino https://sites.google.com/site/galdinomcz/
_______________________________________________ R-br mailing list [email protected] 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 forne�a c�digo m�nimo reproduz�vel.
