Paulo, bom dia!

A instrução for (i in 1:500) não parece coerente, pois me parece que você deveria variar em função da iteração n x p. Ao variar n você irá criar vetores de tamanhos diferentes, impossibilitando o armazenamento direto em um data.frame(). Poderia utilizar uma lista. 

Você pode tentar algo como:
simulacao <- function(proporcao, moedas){for (n in c(10, 20, 30)) for (p in c(0.3, 0.4, 0.5)) print(moedas(n,p))}
simulacao(proporcao, moedas)

Outro ponto é que você poderia usar rbinom() para os sorteios, enxugando seu código. Deixo uma ideia abaixo:

### <code r>
args(rbinom) ### function (n, size, prob) 
vetor_moedas <- rbinom(100, 1, .4); vetor_moedas
sum(vetor_moedas)/length(vetor_moedas) ### proporção final

for (n in c(10, 20, 30)) for (p in c(0.3, 0.4, 0.5)) print(rbinom(n, 1,p))
#  [1] 0 1 1 0 0 0 0 0 0 0
#  [1] 0 0 0 0 0 0 1 0 0 1
#  [1] 0 1 1 0 0 0 0 1 0 1
#  [1] 0 1 0 0 0 0 0 0 0 0 0 1 0 1 0 0 0 0 0 0
#  [1] 0 1 0 0 0 1 0 1 0 0 0 1 1 0 0 1 0 0 0 0
#  [1] 0 0 0 1 0 1 1 1 0 1 1 0 1 0 0 1 1 1 1 1
#  [1] 0 1 0 1 1 0 0 0 0 0 0 0 0 0 0 1 0 0 1 0 0 0 1 0 0 0 0 0 0 0
#  [1] 0 0 0 0 0 0 1 1 0 1 0 0 0 0 0 1 1 1 0 1 0 1 0 0 1 1 1 0 0 0
#  [1] 1 0 0 1 1 1 1 1 1 1 0 0 1 1 0 1 1 1 1 0 0 1 1 1 0 1 1 1 1 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]




Em 27 de janeiro de 2016 03:33, Paulo Henrique Pimenta <paulopimenta6@hotmail.com> escreveu:
Olá a todos

Estou escrevendo um código que calcula o lance de uma moeda jogada e a probabilidade dela acontecer em respostas de 1 para cara e 0 para coroa, num bloco do meu código fiquei com uma dúvida relacionada a vetorização. Abaixo passarei todo o código e irei destacar o que me traz a dúvida:

####Laboratorio 1 de R

###cara eh 1
###coroa eh 0
vetor_moedas <- NULL
vetor <- NULL
a <- NULL

moeda <- function(p){

if(runif(1) < p){

                 y <- 1  

                 }else{

                       y <- 0
   
                      }
                                return(y)
  
                                }
                
####separando uma funcao da outra####

moedas <- function(numeros,probabilidade){

                                               for (i in 1:numeros){

                                               vetor[i] <- moeda(probabilidade)

                                                                        }

                                               return(vetor)

                                               } 


####separando uma funcao da outra####

proporcao <- function(moedas){

                           numeros_1 <- sum(vetor_moedas)

                           numeros_totais <- length(vetor_moedas) 

                           proporcao_final <- numeros_1/numeros_totais

                           return(proporcao_final)

                          }

####separando uma funcao da outra####

simulacao <- function(proporcao, moedas){

###variando o "n" e o "p"

for (i in 1:500){

\\Aqui começa a minha, pois como fazer com que o vetor a1 aloque como data.frame todos os dados feitos pela função moedas, como fazer com que a2 também aloque um outro data.frame que aloque informações da função moedas e assim por diante... 

  n <- c(10, 20, 30, 40, 50)
  p <- c(0.2, 0.3, 0.4, 0.5)  
    
a[i] <- data.frame(moedas(n[i],p[i])) 

\\ As vezes ele só aloca o que é produzido em moedas(n[1],p[1]) em a1 e recicla o restante. Se alguém quiser testar fiquem a vontade para ajudar!

               }


return(a)

                                       }

##############################
##############################
###Probabilidade de ser cara ou 1 eh 0.5 - funcao moeda
###lancamento de 10 moedas - funcao moedas

###comeco das chamas

#########################################
prob <- 0.4

moeda(prob)

#########################################
n_1 <- 100

moedas(n_1, prob)

#########################################

vetor_moedas <- moedas(n_1, prob)

#########################################

proporcao(vetor_moedas)

#########################################

simulacao(proporcao,moedas)

###
###
##############################
 

Um grande abraço a todos!!

Paulo Henrique de A. S. Pimenta.

Graduando em Meteorologia (Bacharelado) - IAG/USP.
Fone: +5511981318435.

_______________________________________________
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 forneça código mínimo reproduzível.