[R-es] Unir varias columnas en una sola
Carlos J. Gil Bellosta
cgb en datanalytics.com
Sab Feb 16 22:06:24 CET 2013
data(iris)
apply(iris[,-1], 1, paste, collapse = " ")
Un saludo,
Carlos J. Gil Bellosta
http://www.datanalytics.com
El día 16 de febrero de 2013 22:01, Fernando Macedo
<fermace en gmail.com> escribió:
> Muchas gracias Carlos, esta puede ser una manera, pero omití decir que
> tengo que juntar en principio 90 columnas y luego podrían ser unas
> bastantes más, con lo que escribir cada columna por separado en el
> comando paste() resulta poco práctico.
>
> Estuve tratando de usar colnames embutido en el paste o
> dat[,2:ncol(dat)] pero no obtengo lo que busco. ¿Alguna otra idea de
> como poder usar el paste?
>
> Puedo separa la parte del ID y los datos y trabajarlas por separado para
> luego juntarlas, pero estoy en la misma al momento de juntar los datos
> en un bloque solo.
>
> Saludos
>
> Fernando
>
>
> El 16/02/13 18:08, Carlos Ortega escribió:
>> Hola,
>>
>> Esta es una forma:
>>
>> > dat <- data.frame(ID=1:10, col2=rnorm(10), col3=rnorm(10),
>> col4=rnorm(10))
>> > dat
>> ID col2 col3 col4
>> 1 1 1.937262274 -1.40273857 -1.9050536
>> 2 2 1.337924391 1.22860925 0.3107429
>> 3 3 -0.002105218 -1.23291681 -0.8310097
>> 4 4 0.058295336 1.61871970 -1.0597558
>> 5 5 -0.091517513 -0.99422029 0.6173428
>> 6 6 0.534795503 0.07014697 2.0995122
>> 7 7 -0.075998477 -0.23940158 -1.0736795
>> 8 8 -0.886673525 0.10413987 0.5884510
>> 9 9 1.710306972 1.82942633 0.8287779
>> 10 10 -0.208130660 0.30641105 -0.1400882
>> > paste(dat$ID," ", dat$col2, dat$col3, dat$col4, sep="")
>> [1] "1 1.93726227410434-1.40273857014605-1.90505356394495"
>> [2] "2 1.337924391475771.228609247659310.31074290333037"
>> [3] "3 -0.00210521831655121-1.23291680520637-0.831009714534192"
>> [4] "4 0.05829533559436561.61871969701435-1.05975581471527"
>> [5] "5 -0.0915175127220064-0.9942202875567060.617342803251114"
>> [6] "6 0.534795503353260.0701469747674812.09951220785224"
>> [7] "7 -0.0759984771691605-0.239401578046576-1.07367948585017"
>> [8] "8 -0.8866735246857180.1041398738270440.588451006124745"
>> [9] "9 1.710306971765611.829426334369970.828777900768105"
>> [10] "10 -0.2081306604078980.306411045612295-0.140088249050132"
>>
>>
>> Saludos,
>> Carlos Ortega
>> www.qualityexcellence.es <http://www.qualityexcellence.es>
>>
>>
>> El 16 de febrero de 2013 19:58, Fernando Macedo <fermace en gmail.com
>> <mailto:fermace en gmail.com>> escribió:
>>
>>
>>
>> Buenas a todos, relato directamente mi problema.
>>
>> Estoy preparando unos datos para ingresarlos en otro programa que
>> requiere una columna de ID y el resto de la información toda
>> seguida sin
>> espacios.
>>
>> El echo es que yo tengo la información separada en columnas, por
>> ejemplo:
>>
>> ID col2 col3 col4 col5 etc.
>>
>> y precisaría dejarla de la siguiente forma:
>>
>> ID col2col3col4col5 etc.
>>
>> Para luego escribir a disco y proceder con otro software.
>>
>> Alguien sabe que comando puedo usar para juntar una serie columnas
>> todas
>> en un bloque solo?
>>
>> Saludos y muchas gracias de ante mano!!
>>
>> Fernando Macedo
>>
>> _______________________________________________
>> R-help-es mailing list
>> R-help-es en r-project.org <mailto:R-help-es en r-project.org>
>> https://stat.ethz.ch/mailman/listinfo/r-help-es
>>
>>
>>
>>
>> --
>> Saludos,
>> Carlos Ortega
>> www.qualityexcellence.es <http://www.qualityexcellence.es>
>
>
> [[alternative HTML version deleted]]
>
>
> _______________________________________________
> R-help-es mailing list
> R-help-es en r-project.org
> https://stat.ethz.ch/mailman/listinfo/r-help-es
>
Más información sobre la lista de distribución R-help-es