
Tales, De forma geral, quando você quer executar uma tarefa que deve ser repetida sob uma certa estrutura, isso pode ser feito via o comando 'for'. Por exemplo: # "Imprimir" números de 1 a 5: for(indice in 1:5){ print(indice) } No seu caso, se vc tem uma matriz da qual deve ser extraído, p. ex., o valor mínimo de cada coluna: # Semente para gerar o mesmo conjunto de valores aleatórios set.seed(646332) # Gerando uma matriz 10x5 para exemplo a<-matrix(rnorm(5*10),10,5) a # Extraíndo o mínimo de cada coluna via 'for' nc<-ncol(a) # Número de colunas da matriz 'a' teste<-vector('numeric',nc) # Criando um vetor numérico de comprimento 'nc' for(i in 1:nc){ teste[i]<-min(a[,i]) } E para gerar a matriz Mmin do seu código: nr<-nrow(a) # número de linhas de 'a' matrix(teste,nrow=nr,ncol=nc,byrow=T) # matriz Mmin de dimemsão 'nr' por 'nc' No R, uma alternativa nesse caso é a função apply(), que aplica uma determinada função especificada às linhas ou colunas: # Aplicando uma função a todas as colunas com a função apply() teste.1<-apply(a,MARGIN=2,FUN=min) # Função 'min' aplicada às colunas (MARGIN=2) de 'a' teste.1 matrix(teste.1,10,5,byrow=T) Com isso, acho que já dá para facilitar a sua vida. Entretanto, reforço o que já foi dito: Sempre que for postar solicitando ajuda, se coloque no lugar de quem vai ler sobre a sua dúvida pela primeira vez e dê uma descrição breve do problema, acompanhado de um código (minimamente legível e sucinto) que o reproduza. Att., Rubem