
Bom Dia Pessoal, Tenho um banco de dados com três variáveis parc (número da parcela), mont2(número de insetos), dead2 (mortalidade), com 108 dados, estou tentando fazer uma amostragem com a função sample(), para um n da amostra igual a 30, ate ai tudo bem, mas quando repito a função sample() para um número de vezes superior ao n da amostra começam a aparecer NA nos sorteio, porque isso poderia estar acontecendo, uma vez que estou utilizando a função com reposição, fiz:
nde<-read.table("Tout_NDE.txt",header=T)# Todos os dados
#
dead2<-nde$Mortalite[nde$Temps==2]-nde$Mortalite[nde$Temps==1]# Mortalidade no segundo mês
mont2<-nde$Monticules[nde$Temps==2]-nde$Monticules[nde$Temps==1]# Número de insetos no segundo mês
parc<-1:108 # Número da parcela no campo
mois2<-cbind(parc,mont2,dead2)
#
nparc=30# Tamanho da amostra independente a ser sorteada com sample ()
Nsim=31# Numero de simulações da função sample
RES=NULL
for(i in 1:Nsim){
+ + res=NULL + spl=sample(parc,nparc, replace = TRUE) + resspl=mois2[spl[1:30],] + my.mont=mean(resspl[,2][i]) + my.dead=mean(resspl[,3][i]) + result=rbind(res,c(my.mont,my.dead,i)) + #print(result) + RES=rbind(RES,result) + colnames(RES)=c("monticule","mortalite","simulation") + }
print(RES)
monticule mortalite simulation [1,] 5 4.000000 1 [2,] 0 0.000000 2 [3,] 1 12.000000 3 [4,] 1 5.263158 4 [5,] 0 0.000000 5 [6,] 0 0.000000 6 [7,] 2 9.090909 7 [8,] 0 0.000000 8 [9,] 1 0.000000 9 [10,] 0 0.000000 10 [11,] 1 11.764706 11 [12,] 3 6.451613 12 [13,] 3 12.000000 13 [14,] 3 4.545455 14 [15,] 1 3.225806 15 [16,] 0 0.000000 16 [17,] 3 4.545455 17 [18,] 1 0.000000 18 [19,] 5 13.636364 19 [20,] 2 12.121212 20 [21,] 2 6.896552 21 [22,] 1 5.263158 22 [23,] 2 0.000000 23 [24,] 10 8.333333 24 [25,] 5 14.285714 25 [26,] 8 10.000000 26 [27,] 8 10.000000 27 [28,] 3 4.761905 28 [29,] 0 0.000000 29 [30,] 1 3.571429 30 [31,] NA NA 31
Obrigado, Alexandre dos Santos Ingenieur forestier, Msc. INRA- Biostatistique et Processus Spatiaux (BioSP) Domaine Saint-Paul Site Agroparc 84914 - Avignon - France Tél. : +33 (0)6 87 95 16 29

O problema não é do sample, mas da sua implementação. Vc cria um obj com 30 linhas (resspl) e tenta extrair a 31a linha (veja q eventualmente i=31). On 25 Apr 2011 10:18, "Alexandre dos Santos" <alexandresantosbr@yahoo.com.br> wrote: Bom Dia Pessoal, Tenho um banco de dados com três variáveis parc (número da parcela), mont2(número de insetos), dead2 (mortalidade), com 108 dados, estou tentando fazer uma amostragem com a função sample(), para um n da amostra igual a 30, ate ai tudo bem, mas quando repito a função sample() para um número de vezes superior ao n da amostra começam a aparecer NA nos sorteio, porque isso poderia estar acontecendo, uma vez que estou utilizando a função com reposição, fiz:
nde<-read.table("Tout_NDE.txt",header=T)# Todos os dados
#
dead2<-nde$Mortalite[nde$Temps==2]-nde$Mortalite[nde$Temps==1]# Mortalidade no segundo mês
mont2<-nde$Monticules[nde$Temps==2]-nde$Monticules[nde$Temps==1]# Número de insetos no segundo mês
parc<-1:108 # Número da parcela no campo
mois2<-cbind(parc,mont2,dead2)
#
nparc=30# Tamanho da amostra independente a ser sorteada com sample ()
Nsim=31# Numero de simulações da função sample
RES=NULL
for(i in 1:Nsim){
+ + res=NULL + spl=sample(parc,nparc, replace = TRUE) + resspl=mois2[spl[1:30],] + my.mont=mean(resspl[,2][i]) + my.dead=mean(resspl[,3][i]) + result=rbind(res,c(my.mont,my.dead,i)) + #print(result) + RES=rbind(RES,result) + colnames(RES)=c("monticule","mortalite","simulation") + }
print(RES)
monticule mortalite simulation [1,] 5 4.000000 1 [2,] 0 0.000000 2 [3,] 1 12.000000 3 [4,] 1 5.263158 4 [5,] 0 0.000000 5 [6,] 0 0.000000 6 [7,] 2 9.090909 7 [8,] 0 0.000000 8 [9,] 1 0.000000 9 [10,] 0 0.000000 10 [11,] 1 11.764706 11 [12,] 3 6.451613 12 [13,] 3 12.000000 13 [14,] 3 4.545455 14 [15,] 1 3.225806 15 [16,] 0 0.000000 16 [17,] 3 4.545455 17 [18,] 1 0.000000 18 [19,] 5 13.636364 19 [20,] 2 12.121212 20 [21,] 2 6.896552 21 [22,] 1 5.263158 22 [23,] 2 0.000000 23 [24,] 10 8.333333 24 [25,] 5 14.285714 25 [26,] 8 10.000000 26 [27,] 8 10.000000 27 [28,] 3 4.761905 28 [29,] 0 0.000000 29 [30,] 1 3.571429 30 [31,] NA NA 31
Obrigado, *Alexandre dos Santos* *Ingenieur forestier, Msc.* *INRA- Biostatistique et Processus Spatiaux (BioSP)* *Domaine Saint-Paul Site Agroparc 84914 - Avignon - France Tél. : +33 (0)6 87 95 16 29* _______________________________________________ R-br mailing list R-br@listas.c3sl.ufpr.br https://listas.inf.ufpr.br/cgi-bin/mailman/listinfo/r-br

Obrigado Benilton, Agora já sei onde esta o problema, mais é que eu preciso do valor das duas variáveis na segunda e terceira colunas associadas aos valores sorteados para a variável parc, tentei fazer resspl=mois2[spl,], também sem sucesso, pois meu objetivo é fazer um sorteio de n=30 e repetir 99 vezes, Alexandre From: r-br-bounces@listas.c3sl.ufpr.br [mailto:r-br-bounces@listas.c3sl.ufpr.br] On Behalf Of Benilton Carvalho Sent: segunda-feira, 25 de abril de 2011 08:15 To: r-br@listas.c3sl.ufpr.br Subject: Re: [R-br] Problema com sample() O problema não é do sample, mas da sua implementação. Vc cria um obj com 30 linhas (resspl) e tenta extrair a 31a linha (veja q eventualmente i=31). On 25 Apr 2011 10:18, "Alexandre dos Santos" <alexandresantosbr@yahoo.com.br> wrote: Bom Dia Pessoal, Tenho um banco de dados com três variáveis parc (número da parcela), mont2(número de insetos), dead2 (mortalidade), com 108 dados, estou tentando fazer uma amostragem com a função sample(), para um n da amostra igual a 30, ate ai tudo bem, mas quando repito a função sample() para um número de vezes superior ao n da amostra começam a aparecer NA nos sorteio, porque isso poderia estar acontecendo, uma vez que estou utilizando a função com reposição, fiz:
nde<-read.table("Tout_NDE.txt",header=T)# Todos os dados
#
dead2<-nde$Mortalite[nde$Temps==2]-nde$Mortalite[nde$Temps==1]# Mortalidade no segundo mês
mont2<-nde$Monticules[nde$Temps==2]-nde$Monticules[nde$Temps==1]# Número de insetos no segundo mês
parc<-1:108 # Número da parcela no campo
mois2<-cbind(parc,mont2,dead2)
#
nparc=30# Tamanho da amostra independente a ser sorteada com sample ()
Nsim=31# Numero de simulações da função sample
RES=NULL
for(i in 1:Nsim){
+ + res=NULL + spl=sample(parc,nparc, replace = TRUE) + resspl=mois2[spl[1:30],] + my.mont=mean(resspl[,2][i]) + my.dead=mean(resspl[,3][i]) + result=rbind(res,c(my.mont,my.dead,i)) + #print(result) + RES=rbind(RES,result) + colnames(RES)=c("monticule","mortalite","simulation") + }
print(RES)
monticule mortalite simulation [1,] 5 4.000000 1 [2,] 0 0.000000 2 [3,] 1 12.000000 3 [4,] 1 5.263158 4 [5,] 0 0.000000 5 [6,] 0 0.000000 6 [7,] 2 9.090909 7 [8,] 0 0.000000 8 [9,] 1 0.000000 9 [10,] 0 0.000000 10 [11,] 1 11.764706 11 [12,] 3 6.451613 12 [13,] 3 12.000000 13 [14,] 3 4.545455 14 [15,] 1 3.225806 15 [16,] 0 0.000000 16 [17,] 3 4.545455 17 [18,] 1 0.000000 18 [19,] 5 13.636364 19 [20,] 2 12.121212 20 [21,] 2 6.896552 21 [22,] 1 5.263158 22 [23,] 2 0.000000 23 [24,] 10 8.333333 24 [25,] 5 14.285714 25 [26,] 8 10.000000 26 [27,] 8 10.000000 27 [28,] 3 4.761905 28 [29,] 0 0.000000 29 [30,] 1 3.571429 30 [31,] NA NA 31
Obrigado, Alexandre dos Santos Ingenieur forestier, Msc. INRA- Biostatistique et Processus Spatiaux (BioSP) Domaine Saint-Paul Site Agroparc 84914 - Avignon - France Tél. : +33 (0)6 87 95 16 29 _______________________________________________ R-br mailing list R-br@listas.c3sl.ufpr.br https://listas.inf.ufpr.br/cgi-bin/mailman/listinfo/r-br

De um exemplo reproduzivel e tenho certeza que muitos terao prazer em ajuda-lo. b 2011/4/25 Alexandre dos Santos <alexandresantosbr@yahoo.com.br>:
Obrigado Benilton,
Agora já sei onde esta o problema, mais é que eu preciso do valor das duas variáveis na segunda e terceira colunas associadas aos valores sorteados para a variável parc, tentei fazer resspl=mois2[spl,], também sem sucesso, pois meu objetivo é fazer um sorteio de n=30 e repetir 99 vezes,
Alexandre
From: r-br-bounces@listas.c3sl.ufpr.br [mailto:r-br-bounces@listas.c3sl.ufpr.br] On Behalf Of Benilton Carvalho Sent: segunda-feira, 25 de abril de 2011 08:15 To: r-br@listas.c3sl.ufpr.br Subject: Re: [R-br] Problema com sample()
O problema não é do sample, mas da sua implementação. Vc cria um obj com 30 linhas (resspl) e tenta extrair a 31a linha (veja q eventualmente i=31).
On 25 Apr 2011 10:18, "Alexandre dos Santos" <alexandresantosbr@yahoo.com.br> wrote:
Bom Dia Pessoal,
Tenho um banco de dados com três variáveis parc (número da parcela), mont2(número de insetos), dead2 (mortalidade), com 108 dados, estou tentando fazer uma amostragem com a função sample(), para um n da amostra igual a 30, ate ai tudo bem, mas quando repito a função sample() para um número de vezes superior ao n da amostra começam a aparecer NA nos sorteio, porque isso poderia estar acontecendo, uma vez que estou utilizando a função com reposição, fiz:
nde<-read.table("Tout_NDE.txt",header=T)# Todos os dados
#
dead2<-nde$Mortalite[nde$Temps==2]-nde$Mortalite[nde$Temps==1]# Mortalidade no segundo mês
mont2<-nde$Monticules[nde$Temps==2]-nde$Monticules[nde$Temps==1]# Número de insetos no segundo mês
parc<-1:108 # Número da parcela no campo
mois2<-cbind(parc,mont2,dead2)
#
nparc=30# Tamanho da amostra independente a ser sorteada com sample ()
Nsim=31# Numero de simulações da função sample
RES=NULL
for(i in 1:Nsim){
+
+ res=NULL
+ spl=sample(parc,nparc, replace = TRUE)
+ resspl=mois2[spl[1:30],]
+ my.mont=mean(resspl[,2][i])
+ my.dead=mean(resspl[,3][i])
+ result=rbind(res,c(my.mont,my.dead,i))
+ #print(result)
+ RES=rbind(RES,result)
+ colnames(RES)=c("monticule","mortalite","simulation")
+ }
print(RES)
monticule mortalite simulation
[1,] 5 4.000000 1
[2,] 0 0.000000 2
[3,] 1 12.000000 3
[4,] 1 5.263158 4
[5,] 0 0.000000 5
[6,] 0 0.000000 6
[7,] 2 9.090909 7
[8,] 0 0.000000 8
[9,] 1 0.000000 9
[10,] 0 0.000000 10
[11,] 1 11.764706 11
[12,] 3 6.451613 12
[13,] 3 12.000000 13
[14,] 3 4.545455 14
[15,] 1 3.225806 15
[16,] 0 0.000000 16
[17,] 3 4.545455 17
[18,] 1 0.000000 18
[19,] 5 13.636364 19
[20,] 2 12.121212 20
[21,] 2 6.896552 21
[22,] 1 5.263158 22
[23,] 2 0.000000 23
[24,] 10 8.333333 24
[25,] 5 14.285714 25
[26,] 8 10.000000 26
[27,] 8 10.000000 27
[28,] 3 4.761905 28
[29,] 0 0.000000 29
[30,] 1 3.571429 30
[31,] NA NA 31
Obrigado,
Alexandre dos Santos
Ingenieur forestier, Msc.
INRA- Biostatistique et Processus Spatiaux (BioSP)
Domaine Saint-Paul Site Agroparc 84914 - Avignon - France Tél. : +33 (0)6 87 95 16 29
_______________________________________________ R-br mailing list R-br@listas.c3sl.ufpr.br https://listas.inf.ufpr.br/cgi-bin/mailman/listinfo/r-br
_______________________________________________ R-br mailing list R-br@listas.c3sl.ufpr.br https://listas.inf.ufpr.br/cgi-bin/mailman/listinfo/r-br
-- Successful people ask better questions, and as a result, they get better answers. (Tony Robbins)

É o que o Benilton disse, tu ta tentando pegar o 31º vetor de algo com tamanho 30. O que por sinal tava errado, porque tu tava pegando somente a i-ésima observação da i-ésima simulação, e não a média da simulação. Creio que isso aqui faz o que tu quer (em negrito o que eu mudei). for(i in 1:Nsim){ res=NULL spl=sample(parc,nparc, replace = TRUE) resspl=mois2[spl[1:30],] * my.mont=mean(resspl[,2])* * my.dead=mean(resspl[,3])* result=rbind(res,c(my.mont,my.dead,i)) #print(result) RES=rbind(RES,result) colnames(RES)=c("monticule","mortalite","simulation") } 2011/4/25 Benilton Carvalho <beniltoncarvalho@gmail.com>
De um exemplo reproduzivel e tenho certeza que muitos terao prazer em ajuda-lo. b
2011/4/25 Alexandre dos Santos <alexandresantosbr@yahoo.com.br>:
Obrigado Benilton,
Agora já sei onde esta o problema, mais é que eu preciso do valor das duas variáveis na segunda e terceira colunas associadas aos valores sorteados para a variável parc, tentei fazer resspl=mois2[spl,], também sem sucesso, pois meu objetivo é fazer um sorteio de n=30 e repetir 99 vezes,
Alexandre
From: r-br-bounces@listas.c3sl.ufpr.br [mailto:r-br-bounces@listas.c3sl.ufpr.br] On Behalf Of Benilton Carvalho Sent: segunda-feira, 25 de abril de 2011 08:15 To: r-br@listas.c3sl.ufpr.br Subject: Re: [R-br] Problema com sample()
O problema não é do sample, mas da sua implementação. Vc cria um obj com 30 linhas (resspl) e tenta extrair a 31a linha (veja q eventualmente i=31).
On 25 Apr 2011 10:18, "Alexandre dos Santos" <alexandresantosbr@yahoo.com.br> wrote:
Bom Dia Pessoal,
Tenho um banco de dados com três variáveis parc (número da parcela), mont2(número de insetos), dead2 (mortalidade), com 108 dados, estou tentando fazer uma amostragem com a função sample(), para um n da amostra igual a 30, ate ai tudo bem, mas quando repito a função sample() para um número de vezes superior ao n da amostra começam a aparecer NA nos sorteio, porque isso poderia estar acontecendo, uma vez que estou utilizando a função com reposição, fiz:
nde<-read.table("Tout_NDE.txt",header=T)# Todos os dados
#
dead2<-nde$Mortalite[nde$Temps==2]-nde$Mortalite[nde$Temps==1]# Mortalidade no segundo mês
mont2<-nde$Monticules[nde$Temps==2]-nde$Monticules[nde$Temps==1]# Número de insetos no segundo mês
parc<-1:108 # Número da parcela no campo
mois2<-cbind(parc,mont2,dead2)
#
nparc=30# Tamanho da amostra independente a ser sorteada com sample ()
Nsim=31# Numero de simulações da função sample
RES=NULL
for(i in 1:Nsim){
+
+ res=NULL
+ spl=sample(parc,nparc, replace = TRUE)
+ resspl=mois2[spl[1:30],]
+ my.mont=mean(resspl[,2][i])
+ my.dead=mean(resspl[,3][i])
+ result=rbind(res,c(my.mont,my.dead,i))
+ #print(result)
+ RES=rbind(RES,result)
+ colnames(RES)=c("monticule","mortalite","simulation")
+ }
print(RES)
monticule mortalite simulation
[1,] 5 4.000000 1
[2,] 0 0.000000 2
[3,] 1 12.000000 3
[4,] 1 5.263158 4
[5,] 0 0.000000 5
[6,] 0 0.000000 6
[7,] 2 9.090909 7
[8,] 0 0.000000 8
[9,] 1 0.000000 9
[10,] 0 0.000000 10
[11,] 1 11.764706 11
[12,] 3 6.451613 12
[13,] 3 12.000000 13
[14,] 3 4.545455 14
[15,] 1 3.225806 15
[16,] 0 0.000000 16
[17,] 3 4.545455 17
[18,] 1 0.000000 18
[19,] 5 13.636364 19
[20,] 2 12.121212 20
[21,] 2 6.896552 21
[22,] 1 5.263158 22
[23,] 2 0.000000 23
[24,] 10 8.333333 24
[25,] 5 14.285714 25
[26,] 8 10.000000 26
[27,] 8 10.000000 27
[28,] 3 4.761905 28
[29,] 0 0.000000 29
[30,] 1 3.571429 30
[31,] NA NA 31
Obrigado,
Alexandre dos Santos
Ingenieur forestier, Msc.
INRA- Biostatistique et Processus Spatiaux (BioSP)
Domaine Saint-Paul Site Agroparc 84914 - Avignon - France Tél. : +33 (0)6 87 95 16 29
_______________________________________________ R-br mailing list R-br@listas.c3sl.ufpr.br https://listas.inf.ufpr.br/cgi-bin/mailman/listinfo/r-br
_______________________________________________ R-br mailing list R-br@listas.c3sl.ufpr.br https://listas.inf.ufpr.br/cgi-bin/mailman/listinfo/r-br
-- Successful people ask better questions, and as a result, they get better answers. (Tony Robbins) _______________________________________________ R-br mailing list R-br@listas.c3sl.ufpr.br https://listas.inf.ufpr.br/cgi-bin/mailman/listinfo/r-br

Obrigado Rodrigo e Beniltol, Funcionou era isso mesmo que estava fazendo errado. Abraço, Alexandre dos Santos Ingenieur forestier, Msc. INRA- Biostatistique et Processus Spatiaux (BioSP) Domaine Saint-Paul Site Agroparc 84914 - Avignon - France Tél. : +33 (0)6 87 95 16 29 From: r-br-bounces@listas.c3sl.ufpr.br [mailto:r-br-bounces@listas.c3sl.ufpr.br] On Behalf Of Rodrigo Coster Sent: segunda-feira, 25 de abril de 2011 10:26 To: r-br@listas.c3sl.ufpr.br Subject: Re: [R-br] Problema com sample() É o que o Benilton disse, tu ta tentando pegar o 31º vetor de algo com tamanho 30. O que por sinal tava errado, porque tu tava pegando somente a i-ésima observação da i-ésima simulação, e não a média da simulação. Creio que isso aqui faz o que tu quer (em negrito o que eu mudei). for(i in 1:Nsim){ res=NULL spl=sample(parc,nparc, replace = TRUE) resspl=mois2[spl[1:30],] my.mont=mean(resspl[,2]) my.dead=mean(resspl[,3]) result=rbind(res,c(my.mont,my.dead,i)) #print(result) RES=rbind(RES,result) colnames(RES)=c("monticule","mortalite","simulation") } 2011/4/25 Benilton Carvalho <beniltoncarvalho@gmail.com> De um exemplo reproduzivel e tenho certeza que muitos terao prazer em ajuda-lo. b 2011/4/25 Alexandre dos Santos <alexandresantosbr@yahoo.com.br>:
Obrigado Benilton,
Agora já sei onde esta o problema, mais é que eu preciso do valor das duas variáveis na segunda e terceira colunas associadas aos valores sorteados para a variável parc, tentei fazer resspl=mois2[spl,], também sem sucesso, pois meu objetivo é fazer um sorteio de n=30 e repetir 99 vezes,
Alexandre
From: r-br-bounces@listas.c3sl.ufpr.br [mailto:r-br-bounces@listas.c3sl.ufpr.br] On Behalf Of Benilton Carvalho Sent: segunda-feira, 25 de abril de 2011 08:15 To: r-br@listas.c3sl.ufpr.br Subject: Re: [R-br] Problema com sample()
O problema não é do sample, mas da sua implementação. Vc cria um obj com 30 linhas (resspl) e tenta extrair a 31a linha (veja q eventualmente i=31).
On 25 Apr 2011 10:18, "Alexandre dos Santos" <alexandresantosbr@yahoo.com.br> wrote:
Bom Dia Pessoal,
Tenho um banco de dados com três variáveis parc (número da parcela), mont2(número de insetos), dead2 (mortalidade), com 108 dados, estou tentando fazer uma amostragem com a função sample(), para um n da amostra igual a 30, ate ai tudo bem, mas quando repito a função sample() para um número de vezes superior ao n da amostra começam a aparecer NA nos sorteio, porque isso poderia estar acontecendo, uma vez que estou utilizando a função com reposição, fiz:
nde<-read.table("Tout_NDE.txt",header=T)# Todos os dados
#
dead2<-nde$Mortalite[nde$Temps==2]-nde$Mortalite[nde$Temps==1]# Mortalidade no segundo mês
mont2<-nde$Monticules[nde$Temps==2]-nde$Monticules[nde$Temps==1]# Número de insetos no segundo mês
parc<-1:108 # Número da parcela no campo
mois2<-cbind(parc,mont2,dead2)
#
nparc=30# Tamanho da amostra independente a ser sorteada com sample ()
Nsim=31# Numero de simulações da função sample
RES=NULL
for(i in 1:Nsim){
+
+ res=NULL
+ spl=sample(parc,nparc, replace = TRUE)
+ resspl=mois2[spl[1:30],]
+ my.mont=mean(resspl[,2][i])
+ my.dead=mean(resspl[,3][i])
+ result=rbind(res,c(my.mont,my.dead,i))
+ #print(result)
+ RES=rbind(RES,result)
+ colnames(RES)=c("monticule","mortalite","simulation")
+ }
print(RES)
monticule mortalite simulation
[1,] 5 4.000000 1
[2,] 0 0.000000 2
[3,] 1 12.000000 3
[4,] 1 5.263158 4
[5,] 0 0.000000 5
[6,] 0 0.000000 6
[7,] 2 9.090909 7
[8,] 0 0.000000 8
[9,] 1 0.000000 9
[10,] 0 0.000000 10
[11,] 1 11.764706 11
[12,] 3 6.451613 12
[13,] 3 12.000000 13
[14,] 3 4.545455 14
[15,] 1 3.225806 15
[16,] 0 0.000000 16
[17,] 3 4.545455 17
[18,] 1 0.000000 18
[19,] 5 13.636364 19
[20,] 2 12.121212 20
[21,] 2 6.896552 21
[22,] 1 5.263158 22
[23,] 2 0.000000 23
[24,] 10 8.333333 24
[25,] 5 14.285714 25
[26,] 8 10.000000 26
[27,] 8 10.000000 27
[28,] 3 4.761905 28
[29,] 0 0.000000 29
[30,] 1 3.571429 30
[31,] NA NA 31
Obrigado,
Alexandre dos Santos
Ingenieur forestier, Msc.
INRA- Biostatistique et Processus Spatiaux (BioSP)
Domaine Saint-Paul Site Agroparc 84914 - Avignon - France Tél. : +33 (0)6 87 95 16 29
_______________________________________________ R-br mailing list R-br@listas.c3sl.ufpr.br https://listas.inf.ufpr.br/cgi-bin/mailman/listinfo/r-br
_______________________________________________ R-br mailing list R-br@listas.c3sl.ufpr.br https://listas.inf.ufpr.br/cgi-bin/mailman/listinfo/r-br
-- Successful people ask better questions, and as a result, they get better answers. (Tony Robbins) _______________________________________________ R-br mailing list R-br@listas.c3sl.ufpr.br https://listas.inf.ufpr.br/cgi-bin/mailman/listinfo/r-br

Benilton, Obrigado pela ajuda estou enviando o exemplo que estou tentando realizar: # Número de insetos mont2 =c(7,11,10,3,1,1,3,2,11,3,7,4,2,0,6,14,37,7,0,0,0,5,19,7,3,2,1,6,6,4,1,8,2,1 ,3,5,0,2,0,0,3,25,13,5,2,8,0,0,0,0, 1,0,1,2,5,1,2,1,1,1,0,1,1,1,1,5,3,1,1,1,3,1,1,1,2,0,2,1,1,0,0,2,2,2,2,2,2,3, 2,1,0,0,1,1,5,1,1,0,0,3,2,0,0,1,2,1,0,2) # # # Mortalidade (%) dead2<-c(0 , 20 , 8.333333 , 0 , 0 , 0 , 4.761905 , 9.090909 , 8.695652 , 4.166667 , 0 , 0 , 4.761905 , 0 , 20.833333 , 23.076923 , 31.578947 , 10 , 0 , 0 , 0 , 5.882353 , 14.285714 , 23.529412 , 9.090909 , 46.153846 , 27.272727 , 0 , 7.692308 , 4.166667 , 5.263158 , 12.5 , 27.272727 , 7.692308 , 12 , 8.333333 , 0 , 4.347826 , 0 , 0 , 4.545455 , 16.666667 , 20 , 4 , 12.5 , 10 , 0 , 0 , 0 , 0 , 5.263158 , 0 , 0 , 0 , 13.636364 , 30.769231 , 14.814815 , 11.764706 , 12 , 0 , 0 , 3.030303 , 8.571429 , 10 , 0 , 11.428571 , 6.451613 , 3.125 , 6.25 , 0 , 5.714286 , 4.166667 , 5.555556 , 18.181818 , 12.121212 , 0 , 6.060606 , 3.225806 , 3.571429 , 0 , 0 , 17.241379 , 10.714286 , 6.896552 , 3.448276 , 12.903226 , 12.121212 , 22.222222 , 0 , 4 , 0 , 0 , 3.225806 , 3.030303 , 14.285714 , 12 , 3.571429 , 0 , 0 , 4.545455 , 6.896552 , 0 , 0 , 2.564103 , 3.571429 , 3.225806 , 0 , 16.666667) # # parc<-1:108 # Número das parcelas no campo produto<-cbind(parc,mont2,dead2) # nparc=30# Numeros de valores a serem sorteados no banco de dados produto Nsim=99# Numero de repetições do sorteio RES=NULL for(i in 1:Nsim){ res=NULL spl=sample(parc,nparc, replace = TRUE)# Resultado no primeiro sorteio de n=30 valores resspl=mois2[spl,] # Associando as parcelas sorteadas os seus respectivos valores da segunda e terceira coluna my.mont=mean(resspl[,2][i]) # Tirando a média do número de insetos no sorteio my.dead=mean(resspl[,3][i])# Tirando a média da mortalidade no sorteio result=rbind(res,c(my.mont,my.dead,i))# Juntando os resultados de um sorteio #print(result) RES=rbind(RES,result)# Juntando os resultados de 99 sorteios colnames(RES)=c("monticule","mortalite","simulation") } print(RES) Obrigado, Alexandre dos Santos Ingenieur forestier, Msc. INRA- Biostatistique et Processus Spatiaux (BioSP) Domaine Saint-Paul Site Agroparc 84914 - Avignon - France Tél. : +33 (0)6 87 95 16 29 -----Original Message----- From: r-br-bounces@listas.c3sl.ufpr.br [mailto:r-br-bounces@listas.c3sl.ufpr.br] On Behalf Of Benilton Carvalho Sent: segunda-feira, 25 de abril de 2011 10:20 To: r-br@listas.c3sl.ufpr.br Subject: Re: [R-br] Problema com sample() De um exemplo reproduzivel e tenho certeza que muitos terao prazer em ajuda-lo. b 2011/4/25 Alexandre dos Santos <alexandresantosbr@yahoo.com.br>:
Obrigado Benilton,
Agora já sei onde esta o problema, mais é que eu preciso do valor das duas variáveis na segunda e terceira colunas associadas aos valores sorteados para a variável parc, tentei fazer resspl=mois2[spl,], também sem sucesso, pois meu objetivo é fazer um sorteio de n=30 e repetir 99 vezes,
Alexandre
From: r-br-bounces@listas.c3sl.ufpr.br [mailto:r-br-bounces@listas.c3sl.ufpr.br] On Behalf Of Benilton Carvalho Sent: segunda-feira, 25 de abril de 2011 08:15 To: r-br@listas.c3sl.ufpr.br Subject: Re: [R-br] Problema com sample()
O problema não é do sample, mas da sua implementação. Vc cria um obj com 30 linhas (resspl) e tenta extrair a 31a linha (veja q eventualmente i=31).
On 25 Apr 2011 10:18, "Alexandre dos Santos" <alexandresantosbr@yahoo.com.br> wrote:
Bom Dia Pessoal,
Tenho um banco de dados com três variáveis parc (número da parcela), mont2(número de insetos), dead2 (mortalidade), com 108 dados, estou tentando fazer uma amostragem com a função sample(), para um n da amostra igual a 30, ate ai tudo bem, mas quando repito a função sample() para um número de vezes superior ao n da amostra começam a aparecer NA nos sorteio, porque isso poderia estar acontecendo, uma vez que estou utilizando a função com reposição, fiz:
nde<-read.table("Tout_NDE.txt",header=T)# Todos os dados
#
dead2<-nde$Mortalite[nde$Temps==2]-nde$Mortalite[nde$Temps==1]# Mortalidade no segundo mês
mont2<-nde$Monticules[nde$Temps==2]-nde$Monticules[nde$Temps==1]# Número de insetos no segundo mês
parc<-1:108 # Número da parcela no campo
mois2<-cbind(parc,mont2,dead2)
#
nparc=30# Tamanho da amostra independente a ser sorteada com sample ()
Nsim=31# Numero de simulações da função sample
RES=NULL
for(i in 1:Nsim){
+
+ res=NULL
+ spl=sample(parc,nparc, replace = TRUE)
+ resspl=mois2[spl[1:30],]
+ my.mont=mean(resspl[,2][i])
+ my.dead=mean(resspl[,3][i])
+ result=rbind(res,c(my.mont,my.dead,i))
+ #print(result)
+ RES=rbind(RES,result)
+ colnames(RES)=c("monticule","mortalite","simulation")
+ }
print(RES)
monticule mortalite simulation
[1,] 5 4.000000 1
[2,] 0 0.000000 2
[3,] 1 12.000000 3
[4,] 1 5.263158 4
[5,] 0 0.000000 5
[6,] 0 0.000000 6
[7,] 2 9.090909 7
[8,] 0 0.000000 8
[9,] 1 0.000000 9
[10,] 0 0.000000 10
[11,] 1 11.764706 11
[12,] 3 6.451613 12
[13,] 3 12.000000 13
[14,] 3 4.545455 14
[15,] 1 3.225806 15
[16,] 0 0.000000 16
[17,] 3 4.545455 17
[18,] 1 0.000000 18
[19,] 5 13.636364 19
[20,] 2 12.121212 20
[21,] 2 6.896552 21
[22,] 1 5.263158 22
[23,] 2 0.000000 23
[24,] 10 8.333333 24
[25,] 5 14.285714 25
[26,] 8 10.000000 26
[27,] 8 10.000000 27
[28,] 3 4.761905 28
[29,] 0 0.000000 29
[30,] 1 3.571429 30
[31,] NA NA 31
Obrigado,
Alexandre dos Santos
Ingenieur forestier, Msc.
INRA- Biostatistique et Processus Spatiaux (BioSP)
Domaine Saint-Paul Site Agroparc 84914 - Avignon - France Tél. : +33 (0)6 87 95 16 29
_______________________________________________ R-br mailing list R-br@listas.c3sl.ufpr.br https://listas.inf.ufpr.br/cgi-bin/mailman/listinfo/r-br
_______________________________________________ R-br mailing list R-br@listas.c3sl.ufpr.br https://listas.inf.ufpr.br/cgi-bin/mailman/listinfo/r-br
-- Successful people ask better questions, and as a result, they get better answers. (Tony Robbins) _______________________________________________ R-br mailing list R-br@listas.c3sl.ufpr.br https://listas.inf.ufpr.br/cgi-bin/mailman/listinfo/r-br
participantes (3)
-
Alexandre dos Santos
-
Benilton Carvalho
-
Rodrigo Coster