[R-br] Sorteio de n linhas com especificação de variáveis e repetição dos valores calculados nas linhas

Rodrigo Ângelo drigo.angelo em gmail.com
Seg Nov 5 16:07:43 -02 2018


Olá, Alexandre

Tente criar um novo data.frame para o resultado e iterar pelos valores de
Amb:

Repare que o parâmetro "na.rm = T" do comando sd irá desconsiderar os
registros com rate = NA no cálculo do desvio padrão.

d$Amb = factor(d$Amb)
ambs = levels(d$Amb)

resultado = data.frame(
  State = character()
  , Amb = character()
  , Year = integer()
  , rate = double()
  , desv_pad = double())

# quantas vezes irá realizar o experimento:
# "sortear 5 linhas dentro de cada variável Amb e calcular o desvio padrão
da variável rate"
repeticoes = 2

for(amb in ambs) {
  subpopulacao = d[d$Amb == amb]
  for (i in 1:repeticoes) {
    amostra = subpopulacao[sample(NROW(subpopulacao), 5),]
    amostra$desv_pad = sd(amostra$rate, na.rm = T)
    resultado = rbind(resultado, amostra)
  }
}

Atenciosamente,
Rodrigo Ângelo

On Mon, Nov 5, 2018 at 2:38 PM ASANTOS por (R-br) <r-br em listas.c3sl.ufpr.br>
wrote:

> Prezados Membros,
>
>      Segue um exemplo do que estou tentando fazer:
>
> #Tenho um banco de dados d com 4 variáveis (State, Amb, Year e rate)
>
> library(data.table)
> d  <- fread ("
>             State    Amb         Year    rate
>             GA       soil        2015     .4
>             GA       soil        2015     .4
>             GA       soil        2015     .5
>             GA       soil        2015     .2
>             GA       soil        2015     .3
>             GA       soil        2015     NA
>             GA       soil        2016     1.0
>             GA       soil        2016     2.0
>             GA       soil        2016      .5
>             GA       soil        2016     1.0
>             GA       veg         2015     .4
>             GA       veg         2015     .4
>             GA       veg         2015     .5
>             GA       veg         2015     .2
>             GA       veg         2015     .3
>             GA       veg         2015     NA
>             GA       veg         2016     1.0
>             GA       veg         2016     2.0
>             GA       veg         2016      .5
>             GA       veg         2016     1.0
>             ")
> #
>
>   Gostaria de sortear 5 linhas dentro de cada variável Amb, calcular o
> desvio padrão da variável rate e repetir
>   os valores obtidos nas linhas envolvidas em uma nova coluna (desv_pad)
> ao fim cada sorteio, sendo meu output desejado em um sorteio hipotético:
>
>       State  Age Year rate desv_pad
>   1:    GA soil 2015  0.4   0.7549834
>   2:    GA soil 2015  0.4   0.7549834
>   3:    GA soil 2015  0.5   0.3082207
>   4:    GA soil 2015  0.2   0.3082207
>   5:    GA soil 2015  0.3   0.3082207
>   6:    GA soil 2015   NA   0.7549834
>   7:    GA soil 2016  1.0   0.7549834
>   8:    GA soil 2016  2.0   0.7549834
>   9:    GA soil 2016  0.5   0.3082207
> 10:    GA soil 2016  1.0   0.3082207
> 11:    GA  veg 2015  0.4   0.580517
> 12:    GA  veg 2015  0.8   0.8736895
> 13:    GA  veg 2015  0.5   0.580517
> 14:    GA  veg 2015  1.5   0.580517
> 15:    GA  veg 2015  0.3   0.8736895
> 16:    GA  veg 2015   NA   0.8736895
> 17:    GA  veg 2016  1.0   0.580517
> 18:    GA  veg 2016   NA   0.8736895
> 19:    GA  veg 2016  2.0   0.8736895
> 20:    GA  veg 2016  1.7   0.580517
>
>   Alguém teria uma dica de como resolver isso?
>
>   Obrigado
>
> --
> ======================================================================
> 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 99686-6970 <+55%2065%2099686-6970> (VIVO) (+55) 65
> 3221-2674 <+55%2065%203221-2674> (FIXO)
> e-mails:alexandresantosbr em yahoo.com.br
>          alexandre.santos em cas.ifmt.edu.br
> Lattes: http://lattes.cnpq.br/1360403201088680
> OrcID: orcid.org/0000-0001-8232-6722   -   ResearcherID: A-5790-2016
> Researchgate: www.researchgate.net/profile/Alexandre_Santos10
> LinkedIn: br.linkedin.com/in/alexandre-dos-santos-87961635
> Mendeley:www.mendeley.com/profiles/alexandre-dos-santos6/
> ======================================================================
>
> _______________________________________________
> R-br mailing list
> R-br em 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.
-------------- Próxima Parte ----------
Um anexo em HTML foi limpo...
URL: <http://listas.inf.ufpr.br/pipermail/r-br/attachments/20181105/66470002/attachment.html>


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