morales en us.es
2013-Oct-05 06:16 UTC
[R-es] mejora estética del resultado de una función
Hola, tengo una función que cuando mando imprimir el resultado me salen los resultados unidos a un NULL que quiero quitar y no se como hacerlo. Os pongo un ejemplo: foo<- function(x){ x2<- x^2 for(i in 1:length(x)){ print(cat("El cuadrado de",x[i],"es ", x2[i],"n")) } } x <- c(2,4,6) foo(x) El resultado es el siguiente: El cuadrado de 2 es 4 NULL El cuadrado de 4 es 16 NULL El cuadrado de 6 es 36 NULL Saludos [[alternative HTML version deleted]]
Hola, Es un problema de "cat()". Mira esta alternativa: foo<- function(x){ x2<- x^2 for(i in 1:length(x)){ #print(cat("El cuadrado de",x[i],"es ", x2[i],"n")) print(paste("El cuadrado de ",x[i]," es ", x2[i]," n ", sep="")) } } x <- c(2,4,6) foo(x)> foo(x)[1] "El cuadrado de 2 es 4 n " [1] "El cuadrado de 4 es 16 n " [1] "El cuadrado de 6 es 36 n " El 5 de octubre de 2013 08:16, <morales@us.es> escribió:> > > Hola, tengo una función que cuando mando imprimir el resultado me > salen los resultados unidos a un NULL que quiero quitar y no se como > hacerlo. > > Os pongo un ejemplo: > > foo<- function(x){ > x2<- x^2 > for(i in > 1:length(x)){ > print(cat("El cuadrado de",x[i],"es ", x2[i],"n")) > } > } > > x > <- c(2,4,6) > > foo(x) > > El resultado es el siguiente: > > El cuadrado de 2 > es 4 > NULL > El cuadrado de 4 es 16 > NULL > El cuadrado de 6 es 36 > NULL > > > Saludos > > > [[alternative HTML version deleted]] > > > _______________________________________________ > R-help-es mailing list > R-help-es@r-project.org > https://stat.ethz.ch/mailman/listinfo/r-help-es > >-- Saludos, Carlos Ortega www.qualityexcellence.es [[alternative HTML version deleted]]
morales en us.es
2013-Oct-05 08:24 UTC
[R-es] mejora estética del resultado de una función
Muchas gracias por la rapidez en la respuesta. Funciona perfectamente. El 05/10/2013 10:09, Carlos Ortega escribió:> Hola,> Es un problema de "cat()". > Mira esta alternativa: > > foo > x2> for(i in 1:length(x)){ > #print(cat("El cuadrado de",x[i],"es ",x2[i],"n"))> print(paste("El cuadrado de ",x[i]," es ", x2[i]," n ",sep=""))> } > } > x > foo(x) > >> foo(x) > [1] "El cuadrado de 2es 4 n "> [1] "El cuadrado de 4 es 16 n " > [1] "El cuadrado de 6 es36 n "> > El 5 de octubre de 2013 08:16, <morales@us.es [3]>escribió:> >> Hola, tengo una función que cuando mando imprimir elresultado me>> salen los resultados unidos a un NULL que quiero quitary no se como>> hacerlo. >> >> Os pongo un ejemplo: >> >> foo x2 for(iin>> 1:length(x)){ >> print(cat("El cuadrado de",x[i],"es ",x2[i],"n"))>> } >> } >> >> x >> >> foo(x) >> >> El resultado es elsiguiente:>> >> El cuadrado de 2 >> es 4 >> NULL >> El cuadrado de 4es 16>> NULL >> El cuadrado de 6 es 36 >> NULL >> >> Saludos >> >>[[alternative HTML version deleted]]>> >>_______________________________________________>> R-help-es mailinglist>> R-help-es@r-project.org [1] >>https://stat.ethz.ch/mailman/listinfo/r-help-es [2]> > -- >Saludos,> Carlos Ortega > www.qualityexcellence.es [4]Links: ------ [1] mailto:R-help-es@r-project.org [2] https://stat.ethz.ch/mailman/listinfo/r-help-es [3] mailto:morales@us.es [4] http://www.qualityexcellence.es [[alternative HTML version deleted]]