[R-es] Añadir encabezados a un archivo TXT

Javier Marcuzzi javier.ruben.marcuzzi en gmail.com
Jue Dic 17 21:14:49 CET 2015


Estimado Reverté

Si es por memoria podría usar data.table en lugar de data.frame, pero si luego el proceso estadístico necesita memoria no quiere decir que ese cambio alcance.

Por otro lado, si tienes esa cantidad de registros le convendría invertir en algo de hardware, no es cómodo gastar dinero pero quizás algo de ram pueda llegar a adquirir, yo en una oportunidad aumenté la cantidad de ram y la computadora paso a ser otra.

Javier Marcuzzi

De: Marcelino de la Cruz
Enviado: jueves, 17 de diciembre de 2015 14:20
Para: Reverté Calvet, Gerard; 'Olivier Nuñez'
CC: R-help-es en r-project.org
Asunto: Re: [R-es] Añadir encabezados a un archivo TXT

Hola Gerard,


En Windows puedes hacer lo siguiente:

Suponiendo que "fichero.txt" es el archivo de texto con tus variables, 
que se encuentra en el directorio de trabajo [compruébalo con dir()] y 
que  "nombres" es un vector que tienes en R con los nombres que quieres 
poner a las variables de tu fichero,

# guarda los nombres en un fichero llamado "nombres.txt"

write(paste(nombres, collapse=" "), file="nombres.txt")

# invoca desde R el comando "type" de la shell de Windows para pegar 
ambos ficheros.

shell("type nombres.txt fichero.txt >> fichero_con_nombres.txt")


En otro sistema operativo supongo que system() podría hacer más o menos 
lo mismo

Saludos,

MArcelino






El 17/12/2015 a las 15:41, Reverté Calvet, Gerard escribió:
> Hola Olivier, empiezo por la segunda pregunta: el sistema operativo es
> Windows.
>
> Respecto a la primera pregunta el motivo es doble: en primero lugar
> quiero tener los encabezados en los ficheros para evitarme escribirlos
> cuando los quiera cargar en cualquier base de datos o en otro paquete
> estadístico; en segundo lugar, no soy un usuario habitual de R, y de vez
> en cuando intento llevar a cabo “pequeños retos” para aprender cosas
> nuevas en R y también para no olvidar cosas que había aprendido de R.
>
> Gerard Reverté
>
> *De:*Olivier Nuñez [mailto:onunez en unex.es]
> *Enviado el:* jueves, 17 de diciembre de 2015 13:12
> *Para:* Reverté Calvet, Gerard
> *CC:* Javier Marcuzzi; Carlos Ortega; R-help-es en r-project.org
> *Asunto:* Re: [R-es] Añadir encabezados a un archivo TXT
>
> Gerard,
>
> dos preguntas:
>
> 1) Porqué quieres directamente especificar los encabezados en el
> fichero? Es porqué tus ficheros no tienen las columnas igualmente ordenadas?
>
> 2) Qué sistema operativo tienes?
>
> Un saludo. Olivier
>
> ------------------------------------------------------------------------
>
> *De: *"Reverté Calvet, Gerard" <greverte en ajmataro.cat
> <mailto:greverte en ajmataro.cat>>
> *Para: *"Olivier Nuñez" <onunez en unex.es <mailto:onunez en unex.es>>,
> "Javier Marcuzzi" <javier.ruben.marcuzzi en gmail.com
> <mailto:javier.ruben.marcuzzi en gmail.com>>
> *CC: *"Carlos Ortega" <cof en qualityexcellence.es
> <mailto:cof en qualityexcellence.es>>, R-help-es en r-project.org
> <mailto:R-help-es en r-project.org>
> *Enviados: *Jueves, 17 de Diciembre 2015 12:02:09
> *Asunto: *RE: [R-es] Añadir encabezados a un archivo TXT
>
> Gracias Olivier, tu propuesta funciona, pero el problema es que no tengo
> suficiente memoria. Me pasa lo mismo haciendo:
>
> cat(readLines(“archivo datos.txt”),file=”archivo con
> encabezado.txt”,sep=”\n”,append=TRUE), con esta opción funciona pero no
> tengo suficiente memoria para todos los datos.
>
> Muchas gracias a todos por vuestra ayuda.
>
> Gerard Reverté
>
> *De:*Olivier Nuñez [mailto:onunez en unex.es]
> *Enviado el:* miércoles, 16 de diciembre de 2015 16:09
> *Para:* Javier Marcuzzi
> *CC:* Reverté Calvet, Gerard; Carlos Ortega; R-help-es en r-project.org
> <mailto:R-help-es en r-project.org>
> *Asunto:* Re: [R-es] Añadir encabezados a un archivo TXT
>
> Gerard,
>
> supongamos que tu fichero de texto ("test.txt") tiene cuatro columnas
> separadas por espacios.
>
> Si decides llamar estas columnas por ("A","B","C","D"), lo siguiente
> debería funcionar:
>
> linea0="A B C D"
>
> fichero <- file("test.txt")
> linea1<- readLines(fichero)
> writeLines(c(linea0,linea1), con=fichero)
> close(fichero)
>
> ------------------------------------------------------------------------
>
> *De: *"Javier Marcuzzi" <javier.ruben.marcuzzi en gmail.com
> <mailto:javier.ruben.marcuzzi en gmail.com>>
> *Para: *"Reverté Calvet, Gerard" <greverte en ajmataro.cat
> <mailto:greverte en ajmataro.cat>>, "Carlos Ortega"
> <cof en qualityexcellence.es <mailto:cof en qualityexcellence.es>>
> *CC: *R-help-es en r-project.org <mailto:R-help-es en r-project.org>
> *Enviados: *Miércoles, 16 de Diciembre 2015 15:17:45
> *Asunto: *Re: [R-es] Añadir encabezados a un archivo TXT
>
> Estimados
>
> Una idea, si no comprendo mal puede leer los archivos txt desde R, pero
> estos no tienen encabezado, podría colocar esto en un data.frame y usar
> rbind o colnames para escribir los encabezados, luego guardar los
> data.frame con encabezados en un archivo txt. No recuerdo pero creo e
> Rstudio o Rcmdr tienen algo para escribir encabezados al importar los
> datos, o se puede ver el código que genera y copiando y pegando con unas
> pequeñas modificaciones se realiza en forma fácil.
>
> Javier Rubén Marcuzzi
>
>
> *De: *Reverté Calvet, Gerard <mailto:greverte en ajmataro.cat>
> *Enviado: *miércoles, 16 de diciembre de 2015 10:28
> *Para: *'Carlos Ortega' <mailto:cof en qualityexcellence.es>
> *CC: *R-help-es en r-project.org <mailto:R-help-es en r-project.org>
> *Asunto: *Re: [R-es] Añadir encabezados a un archivo TXT
>
> Gracia Carlos, ya intenté esta opción que propones pero no funciona. Por
> lo que leí en la ayuda “cat” sólo acepta objetos de R.
>
> Lo solucioné utilizando readLines() dentro de cat(), pero al tener poca
> RAM no lo pude completar.
>
> Gerard Reverté
>
> Gerard Reverté
>
> Servei d'Estudis i Planificació
>
> Ajuntament de Mataró
>
> Telf.: 937 582 100 ext. 2517
>
> Fax: 937 582 162
>
> mailto:greverte en ajmataro.cat
>
> *De:*Carlos Ortega [mailto:cof en qualityexcellence.es]
> *Enviado el:* miércoles, 16 de diciembre de 2015 13:52
> *Para:* Reverté Calvet, Gerard
> *CC:* R-help-es en r-project.org <mailto:R-help-es en r-project.org>
> *Asunto:* Re: [R-es] Añadir encabezados a un archivo TXT
>
> Hola,
>
> Puedes hacerlo al revés.
>
> Primero, haces un "cat()" con solo la cabecera dirigida a un fichero con
> un nombre nuevo y luego hacer un cat del fichero de datos, dirigido al
> fichero anterior. Y activada la opción de "append=TRUE"...
>
> Saludos,
>
> Carlos Ortega
>
> www.qualityexcellence.es <http://www.qualityexcellence.es>
>
> El 16 de diciembre de 2015, 12:32, Reverté Calvet, Gerard
> <greverte en ajmataro.cat <mailto:greverte en ajmataro.cat>> escribió:
>
> Hola
>
> Dispongo de varios archivos TXT con datos de 32 variables i de más de 5
> millones de registros. Estos archivos van sin encabezados, y quiero
> añadir a los archivos, en la primera linea, el nombre de las variables,
> y claro está quiero hacerlo des de R.
>
> Con “cat” consigo añadir una línea los archivos TXT, pero me la añade al
> final y yo quiero que se añada al principio ¿alguna idea?
>
> Gerard Reverté
>
> *_Avís legal/Aviso legal_*
>
> La present informació s'envia únicament a la persona a la que va
> dirigida i pot contenir informació privilegiada o de caràcter
> confidencial. Qualsevol modificació, retransmissió, difusió o altre ús
> d'aquesta informació per persones o entitats diferents a la persona a la
> que va dirigida està prohibida. Si vostè l'ha rebut per error, si us
> plau contacti amb el remitent i esborri el missatge de qualsevol
> ordinador. En el cas que aquest missatge vagi a ser contestat per la
> mateixa via, ha de saber-se que la seva resposta podria ser coneguda per
> tercers a l'entrar a la xarxa. Per això, si el missatge inclou
> contrasenyes, números de targetes de crèdit o qualsevol altra informació
> que vostè consideri confidencial, seria més segur contestar per una
> altra via i cancel·lar la seva transmissió. L'Ajuntament de Mataró i els
> seus organismes dependents no poden assumir la responsabilitat derivada
> del fet de què terceres persones puguin arribar a conèixer el contingut
> d'aquest missatge durant la seva transmissió.
>
> La presente información se envía únicamente a la persona a la que va
> dirigida y puede contener información privilegiada o de carácter
> confidencial. Cualquier modificación, retransmisión, difusión u otro uso
> de esta información por persones o entidades diferentes a la persona a
> la que va dirigida está prohibida. Si usted la ha recibido por error,
> por favor contacte con el remitente y borre el mensaje. En el caso de
> que este mensaje vaya a ser contestado por la misma vía, ha de saberse
> que su respuesta podría ser conocida por terceros al entrar en la red.
> Por este motivo, si el mensaje incluye contraseñas, números de tarjetas
> de crédito o cualquier otra información que considere confidencial,
> sería más seguro contestar por otra vía y cancelar su transmisión. El
> Ayuntamiento de Mataró y sus organismos dependientes no pueden asumir la
> responsabilidad derivada del hecho de que terceras personas puedan
> llegar a conocer el contenido de este mensaje durante su transmisión.
>
>
> _______________________________________________
> 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>
>
> *_Avís legal/Aviso legal_*
>
> La present informació s'envia únicament a la persona a la que va
> dirigida i pot contenir informació privilegiada o de caràcter
> confidencial. Qualsevol modificació, retransmissió, difusió o altre ús
> d'aquesta informació per persones o entitats diferents a la persona a la
> que va dirigida està prohibida. Si vostè l'ha rebut per error, si us
> plau contacti amb el remitent i esborri el missatge de qualsevol
> ordinador. En el cas que aquest missatge vagi a ser contestat per la
> mateixa via, ha de saber-se que la seva resposta podria ser coneguda per
> tercers a l'entrar a la xarxa. Per això, si el missatge inclou
> contrasenyes, números de targetes de crèdit o qualsevol altra informació
> que vostè consideri confidencial, seria més segur contestar per una
> altra via i cancel·lar la seva transmissió. L'Ajuntament de Mataró i els
> seus organismes dependents no poden assumir la responsabilitat derivada
> del fet de què terceres persones puguin arribar a conèixer el contingut
> d'aquest missatge durant la seva transmissió.
>
> La presente información se envía únicamente a la persona a la que va
> dirigida y puede contener información privilegiada o de carácter
> confidencial. Cualquier modificación, retransmisión, difusión u otro uso
> de esta información por persones o entidades diferentes a la persona a
> la que va dirigida está prohibida. Si usted la ha recibido por error,
> por favor contacte con el remitente y borre el mensaje. En el caso de
> que este mensaje vaya a ser contestado por la misma vía, ha de saberse
> que su respuesta podría ser conocida por terceros al entrar en la red.
> Por este motivo, si el mensaje incluye contraseñas, números de tarjetas
> de crédito o cualquier otra información que considere confidencial,
> sería más seguro contestar por otra vía y cancelar su transmisión. El
> Ayuntamiento de Mataró y sus organismos dependientes no pueden asumir la
> responsabilidad derivada del hecho de que terceras personas puedan
> llegar a conocer el contenido de este mensaje durante su transmisión.
>
> *_Avís legal/Aviso legal_*
>
> La present informació s'envia únicament a la persona a la que va
> dirigida i pot contenir informació privilegiada o de caràcter
> confidencial. Qualsevol modificació, retransmissió, difusió o altre ús
> d'aquesta informació per persones o entitats diferents a la persona a la
> que va dirigida està prohibida. Si vostè l'ha rebut per error, si us
> plau contacti amb el remitent i esborri el missatge de qualsevol
> ordinador. En el cas que aquest missatge vagi a ser contestat per la
> mateixa via, ha de saber-se que la seva resposta podria ser coneguda per
> tercers a l'entrar a la xarxa. Per això, si el missatge inclou
> contrasenyes, números de targetes de crèdit o qualsevol altra informació
> que vostè consideri confidencial, seria més segur contestar per una
> altra via i cancel·lar la seva transmissió. L'Ajuntament de Mataró i els
> seus organismes dependents no poden assumir la responsabilitat derivada
> del fet de què terceres persones puguin arribar a conèixer el contingut
> d'aquest missatge durant la seva transmissió.
>
> La presente información se envía únicamente a la persona a la que va
> dirigida y puede contener información privilegiada o de carácter
> confidencial. Cualquier modificación, retransmisión, difusión u otro uso
> de esta información por persones o entidades diferentes a la persona a
> la que va dirigida está prohibida. Si usted la ha recibido por error,
> por favor contacte con el remitente y borre el mensaje. En el caso de
> que este mensaje vaya a ser contestado por la misma vía, ha de saberse
> que su respuesta podría ser conocida por terceros al entrar en la red.
> Por este motivo, si el mensaje incluye contraseñas, números de tarjetas
> de crédito o cualquier otra información que considere confidencial,
> sería más seguro contestar por otra vía y cancelar su transmisión. El
> Ayuntamiento de Mataró y sus organismos dependientes no pueden asumir la
> responsabilidad derivada del hecho de que terceras personas puedan
> llegar a conocer el contenido de este mensaje durante su transmisión.
>
>
> _______________________________________________
> 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
>
> *_Avís legal/Aviso legal_*
>
> La present informació s'envia únicament a la persona a la que va
> dirigida i pot contenir informació privilegiada o de caràcter
> confidencial. Qualsevol modificació, retransmissió, difusió o altre ús
> d'aquesta informació per persones o entitats diferents a la persona a la
> que va dirigida està prohibida. Si vostè l'ha rebut per error, si us
> plau contacti amb el remitent i esborri el missatge de qualsevol
> ordinador. En el cas que aquest missatge vagi a ser contestat per la
> mateixa via, ha de saber-se que la seva resposta podria ser coneguda per
> tercers a l'entrar a la xarxa. Per això, si el missatge inclou
> contrasenyes, números de targetes de crèdit o qualsevol altra informació
> que vostè consideri confidencial, seria més segur contestar per una
> altra via i cancel·lar la seva transmissió. L'Ajuntament de Mataró i els
> seus organismes dependents no poden assumir la responsabilitat derivada
> del fet de què terceres persones puguin arribar a conèixer el contingut
> d'aquest missatge durant la seva transmissió.
>
> ------------------------------------------------------------------------
>
> La presente información se envía únicamente a la persona a la que va
> dirigida y puede contener información privilegiada o de carácter
> confidencial. Cualquier modificación, retransmisión, difusión u otro uso
> de esta información por persones o entidades diferentes a la persona a
> la que va dirigida está prohibida. Si usted la ha recibido por error,
> por favor contacte con el remitente y borre el mensaje. En el caso de
> que este mensaje vaya a ser contestado por la misma vía, ha de saberse
> que su respuesta podría ser conocida por terceros al entrar en la red.
> Por este motivo, si el mensaje incluye contraseñas, números de tarjetas
> de crédito o cualquier otra información que considere confidencial,
> sería más seguro contestar por otra vía y cancelar su transmisión. El
> Ayuntamiento de Mataró y sus organismos dependientes no pueden asumir la
> responsabilidad derivada del hecho de que terceras personas puedan
> llegar a conocer el contenido de este mensaje durante su transmisión.
>
> *__*
>
> *_Avís legal/Aviso legal_*
>
> La present informació s'envia únicament a la persona a la que va
> dirigida i pot contenir informació privilegiada o de caràcter
> confidencial. Qualsevol modificació, retransmissió, difusió o altre ús
> d'aquesta informació per persones o entitats diferents a la persona a la
> que va dirigida està prohibida. Si vostè l'ha rebut per error, si us
> plau contacti amb el remitent i esborri el missatge de qualsevol
> ordinador. En el cas que aquest missatge vagi a ser contestat per la
> mateixa via, ha de saber-se que la seva resposta podria ser coneguda per
> tercers a l'entrar a la xarxa. Per això, si el missatge inclou
> contrasenyes, números de targetes de crèdit o qualsevol altra informació
> que vostè consideri confidencial, seria més segur contestar per una
> altra via i cancel·lar la seva transmissió. L'Ajuntament de Mataró i els
> seus organismes dependents no poden assumir la responsabilitat derivada
> del fet de què terceres persones puguin arribar a conèixer el contingut
> d'aquest missatge durant la seva transmissió.
> ------------------------------------------------------------------------
> La presente información se envía únicamente a la persona a la que va
> dirigida y puede contener información privilegiada o de carácter
> confidencial. Cualquier modificación, retransmisión, difusión u otro uso
> de esta información por persones o entidades diferentes a la persona a
> la que va dirigida está prohibida. Si usted la ha recibido por error,
> por favor contacte con el remitente y borre el mensaje. En el caso de
> que este mensaje vaya a ser contestado por la misma vía, ha de saberse
> que su respuesta podría ser conocida por terceros al entrar en la red.
> Por este motivo, si el mensaje incluye contraseñas, números de tarjetas
> de crédito o cualquier otra información que considere confidencial,
> sería más seguro contestar por otra vía y cancelar su transmisión. El
> Ayuntamiento de Mataró y sus organismos dependientes no pueden asumir la
> responsabilidad derivada del hecho de que terceras personas puedan
> llegar a conocer el contenido de este mensaje durante su transmisión.
> <#>
>
>
> _______________________________________________
> R-help-es mailing list
> R-help-es en r-project.org
> https://stat.ethz.ch/mailman/listinfo/r-help-es
>

_______________________________________________
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]]



Más información sobre la lista de distribución R-help-es