Buenas a todos. Relato el problema: - tengo un archivo de 316 columnas por 562000 filas (aprox.). - esas 316 columnas representan 158 sujetos, o sea dos columnas por cada individuo conteniendo información que debe ser condensada en una sola. Lo que necesito es ir tomando las dos columnas de cada individuo e intercalar los elementos de los vectores formando uno solo. Ejemplificando sería algo así:> a[1] "a" "a" "a" "a" "a"> b[1] "b" "b" "b" "b" "b"> c[1] "a" "b" "a" "b" "a" "b" "a" "b" "a" "b" Estoy haciendo con un loop for pero es realmente muy lento. He buscado por algún paquete que ya lo haga directamente pero no he tenido mucho éxito. Me imagino que con sapply o apply pueda ser mucho más efectivo pero me ha resultado complicado para entender la sintaxis de estas funciones cuando involucra más de un objeto (vector, matriz, etc...). Desde ya agradezco las sugerencias que puedan verter sobre este problema. -- Fernando Macedo [[alternative HTML version deleted]]
Fernando, Podrias intentar R> a <- rep('a', 5) R> b <- rep('b', 5) R> a [1] "a" "a" "a" "a" "a" R> b [1] "b" "b" "b" "b" "b" R> c(rbind(a, b)) [1] "a" "b" "a" "b" "a" "b" "a" "b" "a" "b" Saludos, Jorge.- 2015-02-24 23:49 GMT+11:00 Fernando Macedo <fermace en gmail.com>:> Buenas a todos. > Relato el problema: > > - tengo un archivo de 316 columnas por 562000 filas (aprox.). > - esas 316 columnas representan 158 sujetos, o sea dos columnas por cada > individuo conteniendo información que debe ser condensada en una sola. > > Lo que necesito es ir tomando las dos columnas de cada individuo e > intercalar los elementos de los vectores formando uno solo. > > Ejemplificando sería algo así: > > > a > [1] "a" "a" "a" "a" "a" > > b > [1] "b" "b" "b" "b" "b" > > c > [1] "a" "b" "a" "b" "a" "b" "a" "b" "a" "b" > > > Estoy haciendo con un loop for pero es realmente muy lento. He buscado por > algún paquete que ya lo haga directamente pero no he tenido mucho éxito. Me > imagino que con sapply o apply pueda ser mucho más efectivo pero me ha > resultado complicado para entender la sintaxis de estas funciones cuando > involucra más de un objeto (vector, matriz, etc...). > > Desde ya agradezco las sugerencias que puedan verter sobre este problema. > > -- > Fernando Macedo > > [[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 >[[alternative HTML version deleted]]
Excelente! Ahora corre muy rápido. No conocía ese método, creo que me va a resultar muy útil. Muchas gracias y saludos. Fernando Macedo El 24/02/15 a las 10:51, Jorge I Velez escribió: Fernando, Podrias intentar R> a <- rep('a', 5) R> b <- rep('b', 5) R> a [1] "a" "a" "a" "a" "a" R> b [1] "b" "b" "b" "b" "b" R> c(rbind(a, b)) [1] "a" "b" "a" "b" "a" "b" "a" "b" "a" "b" Saludos, Jorge.- 2015-02-24 23:49 GMT+11:00 Fernando Macedo <fermace en gmail.com>:> Buenas a todos. > Relato el problema: > > - tengo un archivo de 316 columnas por 562000 filas (aprox.). > - esas 316 columnas representan 158 sujetos, o sea dos columnas por cada > individuo conteniendo información que debe ser condensada en una sola. > > Lo que necesito es ir tomando las dos columnas de cada individuo e > intercalar los elementos de los vectores formando uno solo. > > Ejemplificando sería algo así: > > > a > [1] "a" "a" "a" "a" "a" > > b > [1] "b" "b" "b" "b" "b" > > c > [1] "a" "b" "a" "b" "a" "b" "a" "b" "a" "b" > > > Estoy haciendo con un loop for pero es realmente muy lento. He buscado por > algún paquete que ya lo haga directamente pero no he tenido mucho éxito. Me > imagino que con sapply o apply pueda ser mucho más efectivo pero me ha > resultado complicado para entender la sintaxis de estas funciones cuando > involucra más de un objeto (vector, matriz, etc...). > > Desde ya agradezco las sugerencias que puedan verter sobre este problema. > > -- > Fernando Macedo > > [[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 >[[alternative HTML version deleted]]
carmen cecilia otero villadiego
2015-Aug-21 15:54 UTC
[R-es] intercalar elementos de vectores
Hola buenos días, Les agradecería mucho si me pueden ayudar con la sgte consulta: R tiene paquetes donde podamos hacer análisis de ecuaciones estructurales o análisis path?? si es así me pueden dar una guía??? De antemano mil gracias, Saludos. El 24 de febrero de 2015, 7:49, Fernando Macedo <fermace en gmail.com> escribió:> Buenas a todos. > Relato el problema: > > - tengo un archivo de 316 columnas por 562000 filas (aprox.). > - esas 316 columnas representan 158 sujetos, o sea dos columnas por cada > individuo conteniendo información que debe ser condensada en una sola. > > Lo que necesito es ir tomando las dos columnas de cada individuo e > intercalar los elementos de los vectores formando uno solo. > > Ejemplificando sería algo así: > > > a > [1] "a" "a" "a" "a" "a" > > b > [1] "b" "b" "b" "b" "b" > > c > [1] "a" "b" "a" "b" "a" "b" "a" "b" "a" "b" > > > Estoy haciendo con un loop for pero es realmente muy lento. He buscado por > algún paquete que ya lo haga directamente pero no he tenido mucho éxito. Me > imagino que con sapply o apply pueda ser mucho más efectivo pero me ha > resultado complicado para entender la sintaxis de estas funciones cuando > involucra más de un objeto (vector, matriz, etc...). > > Desde ya agradezco las sugerencias que puedan verter sobre este problema. > > -- > Fernando Macedo > > [[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 >-- *Cecilia Otero Villadiego* *Estadístico - Esp. mercadeo Gerencial* *Cel:300 661 92 16 - 301 280 74 16* [[alternative HTML version deleted]]
Hola Carmen, Si, hay varios paquetes. De ellos, el mas "famoso" es sem: https://cran.r-project.org/web/packages/sem/index.html Hay varios tutoriales en internet. Podrias comenzar con http://socserv.socsci.mcmaster.ca/jfox/Misc/sem/SEM-paper.pdf <https://www.google.com/url?sa=t&rct=j&q=&esrc=s&source=web&cd=1&cad=rja&uact=8&ved=0CCsQFjAAahUKEwizq-rixLrHAhXKlR4KHczkA-M&url=http%3A%2F%2Fsocserv.socsci.mcmaster.ca%2Fjfox%2FMisc%2Fsem%2FSEM-paper.pdf&ei=9knXVbPYMsqreszJj5gO&usg=AFQjCNFd1Wjy6WKJPEybeLNnOq5Mz-VEEw&sig2=-BHZgieK0dD9zFuP5xrM0g> y sus versiones mas recientes. Saludos cordiales, Jorge I. Vélez JCSMR, Canberra ? 2015-08-22 1:54 GMT+10:00 carmen cecilia otero villadiego < ccovilladiego en gmail.com>:> Hola buenos días, > > Les agradecería mucho si me pueden ayudar con la sgte consulta: > > R tiene paquetes donde podamos hacer análisis de ecuaciones estructurales o > análisis path?? > > si es así me pueden dar una guía??? > > De antemano mil gracias, > > Saludos. > > El 24 de febrero de 2015, 7:49, Fernando Macedo <fermace en gmail.com> > escribió: > > > Buenas a todos. > > Relato el problema: > > > > - tengo un archivo de 316 columnas por 562000 filas (aprox.). > > - esas 316 columnas representan 158 sujetos, o sea dos columnas por cada > > individuo conteniendo información que debe ser condensada en una sola. > > > > Lo que necesito es ir tomando las dos columnas de cada individuo e > > intercalar los elementos de los vectores formando uno solo. > > > > Ejemplificando sería algo así: > > > > > a > > [1] "a" "a" "a" "a" "a" > > > b > > [1] "b" "b" "b" "b" "b" > > > c > > [1] "a" "b" "a" "b" "a" "b" "a" "b" "a" "b" > > > > > > Estoy haciendo con un loop for pero es realmente muy lento. He buscado > por > > algún paquete que ya lo haga directamente pero no he tenido mucho éxito. > Me > > imagino que con sapply o apply pueda ser mucho más efectivo pero me ha > > resultado complicado para entender la sintaxis de estas funciones cuando > > involucra más de un objeto (vector, matriz, etc...). > > > > Desde ya agradezco las sugerencias que puedan verter sobre este problema. > > > > -- > > Fernando Macedo > > > > [[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 > > > > > > -- > *Cecilia Otero Villadiego* > > *Estadístico - Esp. mercadeo Gerencial* > *Cel:300 661 92 16 - 301 280 74 16* > > [[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 >[[alternative HTML version deleted]]