Usar o nome dos elementos da lista com sapply lapply

Saudações, Estou fazendo análise descritiva de várias variáveis e gostaria de automatizar em parte o processo. Assim, uma lista contém cada variável como um elemento e eu gostaria de usar o nome do elemento da lista como título do gráfico. Veja o CMR mylist <- list(salario=sample(1:3,40,r=TRUE), dependentes=sample(1:3,40,r=TRUE)) par(mfrow=c(2,1)) sapply(mylist, function(x) barplot(table(x), main=deparse(substitute(x)))) for(i in names(mylist)) barplot(table(mylist[[i]]), main=i) Eu gostaria de pegar os nomes "salario" e "dependentes" e usá-los como titulo. Tentei várias combinações de parse(), deparse(), substitute(), etc. Quero evitar o for(). Alguma sugestão? Grato. Walmes. ========================================================================== Walmes Marques Zeviani LEG (Laboratório de Estatística e Geoinformação, 25.450418 S, 49.231759 W) Departamento de Estatística - Universidade Federal do Paraná fone: (+55) 41 3361 3573 VoIP: (3361 3600) 1053 1173 e-mail: walmes@ufpr.br twitter: @walmeszeviani homepage: http://www.leg.ufpr.br/~walmes linux user number: 531218 ==========================================================================

Walmes, há um tempo atrás apareceu um problema parecido aqui na lista (ao invés de nomes da lista queriam o nome das colunas de um data.frame). Acredito que a solução seja a mesma, que foi fazer um apply no vetor de nomes do objeto A discussão ta aqui: http://r-br.2285057.n4.nabble.com/R-br-Usando-o-nome-da-coluna-dentro-do-app... []'s 2012/6/8 Walmes Zeviani <walmeszeviani@gmail.com>
Saudações,
Estou fazendo análise descritiva de várias variáveis e gostaria de automatizar em parte o processo. Assim, uma lista contém cada variável como um elemento e eu gostaria de usar o nome do elemento da lista como título do gráfico. Veja o CMR
mylist <- list(salario=sample(1:3,40,r=TRUE), dependentes=sample(1:3,40,r=TRUE)) par(mfrow=c(2,1)) sapply(mylist, function(x) barplot(table(x), main=deparse(substitute(x)))) for(i in names(mylist)) barplot(table(mylist[[i]]), main=i)
Eu gostaria de pegar os nomes "salario" e "dependentes" e usá-los como titulo. Tentei várias combinações de parse(), deparse(), substitute(), etc. Quero evitar o for(). Alguma sugestão?
Grato. Walmes.
========================================================================== Walmes Marques Zeviani LEG (Laboratório de Estatística e Geoinformação, 25.450418 S, 49.231759 W) Departamento de Estatística - Universidade Federal do Paraná fone: (+55) 41 3361 3573 VoIP: (3361 3600) 1053 1173 e-mail: walmes@ufpr.br twitter: @walmeszeviani homepage: http://www.leg.ufpr.br/~walmes linux user number: 531218 ==========================================================================
_______________________________________________ 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.

Walmes, Não tenho como testar agora, mas eu faria sapply(names(mylist), function(x) barplot(mylist[[x]], main=x)) b On Saturday, 9 June 2012, Walmes Zeviani wrote:
Saudações,
Estou fazendo análise descritiva de várias variáveis e gostaria de automatizar em parte o processo. Assim, uma lista contém cada variável como um elemento e eu gostaria de usar o nome do elemento da lista como título do gráfico. Veja o CMR
mylist <- list(salario=sample(1:3,40,r=TRUE), dependentes=sample(1:3,40,r=TRUE)) par(mfrow=c(2,1)) sapply(mylist, function(x) barplot(table(x), main=deparse(substitute(x)))) for(i in names(mylist)) barplot(table(mylist[[i]]), main=i)
Eu gostaria de pegar os nomes "salario" e "dependentes" e usá-los como titulo. Tentei várias combinações de parse(), deparse(), substitute(), etc. Quero evitar o for(). Alguma sugestão?
Grato. Walmes.
========================================================================== Walmes Marques Zeviani LEG (Laboratório de Estatística e Geoinformação, 25.450418 S, 49.231759 W) Departamento de Estatística - Universidade Federal do Paraná fone: (+55) 41 3361 3573 VoIP: (3361 3600) 1053 1173 e-mail: walmes@ufpr.br <javascript:_e({}, 'cvml', 'walmes@ufpr.br');> twitter: @walmeszeviani homepage: http://www.leg.ufpr.br/~walmes linux user number: 531218 ==========================================================================

Walmes, veja se eh isso mylist2 <- lapply(mylist, table) sapply(names(mylist2), function(nm) barplot(mylist2[[nm]], main = nm)) []s, --- Fernando Mayer Universidade Federal de Santa Catarina - UFSC Departamento de Ecologia e Zoologia - ECZ/CCB URL: http://sites.google.com/site/fernandomayer e-mail: fernandomayer [@] gmail.com 2012/6/8 Benilton Carvalho <beniltoncarvalho@gmail.com>:
Walmes,
Não tenho como testar agora, mas eu faria
sapply(names(mylist), function(x) barplot(mylist[[x]], main=x))
b
On Saturday, 9 June 2012, Walmes Zeviani wrote:
Saudações,
Estou fazendo análise descritiva de várias variáveis e gostaria de automatizar em parte o processo. Assim, uma lista contém cada variável como um elemento e eu gostaria de usar o nome do elemento da lista como título do gráfico. Veja o CMR
mylist <- list(salario=sample(1:3,40,r=TRUE), dependentes=sample(1:3,40,r=TRUE)) par(mfrow=c(2,1)) sapply(mylist, function(x) barplot(table(x), main=deparse(substitute(x)))) for(i in names(mylist)) barplot(table(mylist[[i]]), main=i)
Eu gostaria de pegar os nomes "salario" e "dependentes" e usá-los como titulo. Tentei várias combinações de parse(), deparse(), substitute(), etc. Quero evitar o for(). Alguma sugestão?
Grato. Walmes.
========================================================================== Walmes Marques Zeviani LEG (Laboratório de Estatística e Geoinformação, 25.450418 S, 49.231759 W) Departamento de Estatística - Universidade Federal do Paraná fone: (+55) 41 3361 3573 VoIP: (3361 3600) 1053 1173 e-mail: walmes@ufpr.br twitter: @walmeszeviani homepage: http://www.leg.ufpr.br/~walmes linux user number: 531218 ==========================================================================
_______________________________________________ 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.

Walmes, Neste caso creio que o for não seja tão deselegante (Tomara que o PJ não leia isso....) mas em termos de tempo: mylist <- list(salario=sample(1:3,40,r=TRUE), dependentes=sample(1:3,40,r=TRUE)) par(mfrow=c(2,1)) ### Eu faria assim sapply(1:length(mylist), function(x) barplot(table(mylist[x]), main=names(mylist[x]))) system.time(sapply(1:length(mylist), function(x) barplot(table(mylist[x]), main=names(mylist[x])))) ### Benilton sapply(names(mylist), function(x) barplot(table(mylist[x]), main=x)) system.time(sapply(names(mylist), function(x) barplot(table(mylist[x]), main=x))) ### For (Walmes) system.time(for(i in names(mylist)) barplot(table(mylist[[i]]), main=i)) Isso ai... Att Em 8 de junho de 2012 21:31, Benilton Carvalho <beniltoncarvalho@gmail.com>escreveu:
Walmes,
Não tenho como testar agora, mas eu faria
sapply(names(mylist), function(x) barplot(mylist[[x]], main=x))
b
On Saturday, 9 June 2012, Walmes Zeviani wrote:
Saudações,
Estou fazendo análise descritiva de várias variáveis e gostaria de automatizar em parte o processo. Assim, uma lista contém cada variável como um elemento e eu gostaria de usar o nome do elemento da lista como título do gráfico. Veja o CMR
mylist <- list(salario=sample(1:3,40,r=TRUE), dependentes=sample(1:3,40,r=TRUE)) par(mfrow=c(2,1)) sapply(mylist, function(x) barplot(table(x), main=deparse(substitute(x)))) for(i in names(mylist)) barplot(table(mylist[[i]]), main=i)
Eu gostaria de pegar os nomes "salario" e "dependentes" e usá-los como titulo. Tentei várias combinações de parse(), deparse(), substitute(), etc. Quero evitar o for(). Alguma sugestão?
Grato. Walmes.
========================================================================== Walmes Marques Zeviani LEG (Laboratório de Estatística e Geoinformação, 25.450418 S, 49.231759 W) Departamento de Estatística - Universidade Federal do Paraná fone: (+55) 41 3361 3573 VoIP: (3361 3600) 1053 1173 e-mail: walmes@ufpr.br twitter: @walmeszeviani homepage: http://www.leg.ufpr.br/~walmes linux user number: 531218 ==========================================================================
_______________________________________________ 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.
participantes (5)
-
Benilton Carvalho
-
Eder David Borges da Silva
-
Fernando Mayer
-
Rodrigo Coster
-
Walmes Zeviani