Você pode usar o get(). m1 <- matrix(0, 3, 3) m2 <- matrix(0, 3, 2)
# n <- paste0("m", 1:2) n <- sprintf("m%d", 1:2) get(n[1]) get(n[2]) lapply(n, FUN = function(obj) { dim(get(obj)) }) À disposição. Walmes. ======================================================================== Walmes Marques Zeviani LEG - Laboratório de Estatística e Geoinformação [25.450418S 49.231759W] Departamento de Estatística - Universidade Federal do Paraná fone: (+55) 41 3361 3573 linux user number: 531218 pages & profiles: http://www.leg.ufpr.br/~walmes | http://lattes.cnpq.br/4410617539281650 http://git.leg.ufpr.br/walmes | https://github.com/walmes https://www.mendeley.com/profiles/walmes-zeviani1/ ======================================================================== 2016-11-24 14:45 GMT-02:00 Antonio Silva via R-br <r-br@listas.c3sl.ufpr.br> : > Obrigado Cesar, > > Realmente ficou complicado. Veja o exemplo abaixo: > > dados1 <- c(1,2,3,4,5,6) > dados2 <- c(3,4,5,6,7,8) > dados3 <- c(5,6,7,8,9,10) > dados4 <- c(7,8,9,10,11,12) > > t.test(dados1,dados3) > t.test(dados1,dados4) > t.test(dados2,dados3) > t.test(dados2,dados4) > > # OK > > a <- 1 > b <- 2 > > as.name(paste("dados",a,sep="")) > as.name(paste("dados",b,sep="")) > > # parece OK > > for (a in 1:2) { > for (b in 3:4) { > t.test( > as.name(paste("dados",a,sep="")), > as.name(paste("dados",b,sep=""))) > }} > > # erro > > Há alguma forma de "montar" o nome dados1 e dados2 com paste (p.ex.) de > forma que este nome possa ser usado em uma função e reconhecido como vetor > (ou matriz)? > > Abraços > > Antônio Olinto > > Em 24 de novembro de 2016 12:00, Cesar Rabak <cesar.ra...@gmail.com> > escreveu: > >> Antônio, >> >> *Acho* que não entendo sua dúvida e sua descrição do que você deseja >> versus o que você tentou me parece confusa. >> >> para fazer a cadeia "matriz" ser concatenada com, digamos, 1 até 12, (o >> seu "a in 1 to ..." onde o "to" seria em 12), basta apenas fazer o >> seguinte: >> >> paste0("matriz",1:12) >> >> HTH >> -- >> Cesar Rabak >> >> 2016-11-24 7:38 GMT-02:00 Antonio Silva via R-br < >> r-br@listas.c3sl.ufpr.br>: >> >>> Olá a todos >>> >>> Quero fazer cálculos de íncides que utilizam duas matrizes. No total >>> tenho mais que 100. >>> >>> matriz1 <- matrix(.... >>> matriz2 <- matrix(.... >>> matriz3 <- matrix(.... >>> >>> ls() >>> matriz1 matriz2 matriz3 >>> >>> Tentei fazer um looping >>> >>> for (a in 1 to ...) { >>> for (b in 1 to ...) { >>> resp <- função(paste("matriz",a,sep=""),paste("matriz",b,sep="")) >>> assing(paste("resp_",a,"_",b,sep=""),resp) >>> } >>> } >>> >>> No entanto as funções não reconhecem o resultado de >>> paste("matriz",a,sep="") ou as.name(paste("matriz",a,sep="")) como o >>> objeto matriz1, matriz2, etc. >>> >>> Alguém sabe uma forma de "montar" o nome de um objeto de forma que este >>> seja reconhecido como tal? >>> >>> Obrigado >>> >>> Antônio Olinto >>> >>> _______________________________________________ >>> 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. >>> >> >> > > > -- > Antônio Olinto Ávila da Silva > Biólogo / Oceanógrafo > Instituto de Pesca (Fisheries Institute) > São Paulo, Brasil > > _______________________________________________ > 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. >
_______________________________________________ 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.