[R-br] RES: RES: Criar função para tirar a média entre grupos sob condições dadas

Mauro Sznelwar sznelwar em uol.com.br
Sexta Janeiro 29 19:33:03 BRST 2016


Não consegui rodar, alguém sabe o motivo?

 

> require(RCurl)); require(XML)

Loading required package: RCurl

Loading required package: bitops

Loading required package: XML

> url0 <- "https://www.dropbox.com/s/znmr0lwda2y6fc5/BD_teste2.html?dl=1"

> url1 <- gsub("(^.*)(/s/.*)(\\?.*$)", "https://dl.dropboxusercontent.com\\2", url0); url1

[1] "https://dl.dropboxusercontent.com/s/znmr0lwda2y6fc5/BD_teste2.html"

> # [1] "https://dl.dropboxusercontent.com/s/znmr0lwda2y6fc5/BD_teste2.html"

> 

> page <- getURL(url1)

Error in function (type, msg, asError = TRUE)  : 

  SSL certificate problem, verify that the CA cert is OK. Details:

error:14090086:SSL routines:SSL3_GET_SERVER_CERTIFICATE:certificate verify failed

 

De: R-br [mailto:r-br-bounces em listas.c3sl.ufpr.br] Em nome de Éder Comunello
Enviada em: sexta-feira, 29 de janeiro de 2016 09:41
Para: ASANTOS
Cc: r-br em listas.c3sl.ufpr.br
Assunto: Re: [R-br] RES: Criar função para tirar a média entre grupos sob condições dadas

 

Alexandre, bom dia!

 

Não havia atentado para o problema na importação das tabelas, sendo necessário definir as classes. Além disso, na função você deve se referir a "db" antes que "tableFE" e  "x" é definido internamente por lapply().

 

 

### <code r>

require(RCurl); require(XML)

url0 <- "https://www.dropbox.com/s/znmr0lwda2y6fc5/BD_teste2.html?dl=1"

url1 <- gsub("(^.*)(/s/.*)(\\?.*$)", "https://dl.dropboxusercontent.com\\2", url0); url1

# [1] "https://dl.dropboxusercontent.com/s/znmr0lwda2y6fc5/BD_teste2.html"

 

page <- getURL(url1)

tableFE <- readHTMLTable(page, head=T)[[1]]

str(tableFE) ### todas variáveis estão como fatores - corrigir!

 

classes <- c(rep("factor", 6), rep("numeric", 4), "factor")

tableFE <- readHTMLTable(page, head=T, colClasses=classes)[[1]]

str(tableFE) ### OK!

head(tableFE)

 

##Agregando os resultados

aggPestFE <- function(db=tableFE, key="descricao"){

lista  <- split(db, db[key])

result <- lapply(lista, function(x) aggregate(x[,7:8], by=list(x[,3],x[,2],x[,5]), mean))

return(result)

}

 

### Devido aos "defaults", obtém mesmos resultados nas três formas que seguem:

aggPestFE()[5]

aggPestFE(tableFE)[5]

aggPestFE(tableFE, "descricao")[5]

# $`Lagartas Desfolhadoras`

#   Group.1           Group.2 Group.3 formiga_area qtd_destruido

# 1      GN             Chale      26            0          62.5

# 2      RD Corrego da Coruja      26            0          50.0

# 3      GN      Aeroporto II      28            0          75.0

 

### </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]

 

 

 



---
Este email foi escaneado pelo Avast antivírus.
https://www.avast.com/antivirus
-------------- Próxima Parte ----------
Um anexo em HTML foi limpo...
URL: <http://listas.inf.ufpr.br/pipermail/r-br/attachments/20160129/de16c4cb/attachment.html>


Mais detalhes sobre a lista de discussão R-br