[R-es] Construcción de archivo de texto

Marcelino de la Cruz Rot m@rcelino@del@cruz @ending from urjc@e@
Mar Jul 10 17:45:27 CEST 2018


O más fácil aún:


sink(file="datos3.txt")
    for (i in 1:length(d)){
         cat(paste("Pedigree: ",unique(d[[i]]$ped),"\n"))
          print(d[[i]],row.names=F)
}
sink()



El 10/07/2018 a las 17:39, Marcelino de la Cruz Rot escribió:
> O así, también:
>
>
> file="datos.txt"
>
> for (i in 1:length(d)){
>     di<-d[[i]]
>     nc<-ncol(di)
>
>       write(paste("Pedigree: ",  unique(di$ped)),file=file, append=TRUE)
>       write(colnames(di),file=file, sep = "\t", ncolumns=nc, append=TRUE)
>       write(t(as.matrix(di)), file=file, sep = "\t", ncolumns=nc, 
> append=TRUE)
> }
>
>
> Saludos,
>
>
>
>
>
> El 10/07/2018 a las 17:07, Freddy Omar López Quintero escribió:
>> Hola.
>>
>> Con variantes de esto:
>>
>>     cat(file='probando.txt')
>>     for (i in 1:length(d)){
>>           cat(paste("Pedigree: ",unique(d[[i]]$ped),"\n"),
>>     file='probando.txt', append=T)
>>           capture.output(print(d[[i]],row.names=F),
>>     file='probando.txt', append=T)
>>     }
>>
>>
>> Se podría hacer.
>>
>> Saludos.
>>
>> On Tue, Jul 10, 2018 at 9:58 AM Jorge I Velez 
>> <jorgeivanvelez using gmail.com <mailto:jorgeivanvelez using gmail.com>> wrote:
>>
>>     Gracias, Marcelino.  Alguna idea sobre cómo almacenarlo en un
>>     archivo de
>>     texto?
>>     Saludos,
>>     Jorge.-
>>
>>
>>
>>     On Tue, Jul 10, 2018 at 5:13 AM Marcelino de la Cruz Rot <
>>     marcelino.delacruz using urjc.es <mailto:marcelino.delacruz using urjc.es>> 
>> wrote:
>>
>>     > Hola. A ver esto, qué tal:
>>     >
>>     >
>>     > for (i in 1:length(d)){
>>     >       cat(paste("Pedigree: ",unique(d[[i]]$ped),"\n"))
>>     >       print(d[[i]],row.names=F)
>>     >
>>     > }
>>     >
>>     > Saludos,
>>     >
>>     > Marcelino
>>     >
>>     >
>>     >
>>     > El 10/07/2018 a las 11:31, Jorge I Velez escribió:
>>     > > Hola a todos,
>>     > >
>>     > > A partir de los siguientes datos:
>>     > >
>>     > > d <- list(`1` = structure(list(ped = c(1L, 1L, 1L, 1L, 1L, 1L,
>>     1L),
>>     > >      id = 1:7, father = c(2L, 0L, 0L, 2L, 2L, 2L, 2L), mother
>>     = c(3L,
>>     > >      0L, 0L, 3L, 3L, 3L, 3L), sex = c(2L, 1L, 2L, 2L, 2L, 1L,
>>     > >      2L), affected = c(1L, 2L, 1L, 1L, 2L, 2L, 2L)), row.names
>>     = c("1",
>>     > > "2", "3", "4", "5", "6", "7"), class = "data.frame"), `2` =
>>     > structure(list(
>>     > >      ped = c(2L, 2L, 2L, 2L, 2L, 2L, 2L, 2L, 2L, 2L, 2L, 2L, 2L,
>>     > >      2L), id = 201:214, father = c(0L, 0L, 0L, 201L, 201L, 201L,
>>     > >      201L, 201L, 0L, 203L, 203L, 209L, 209L, 209L), mother = 
>> c(0L,
>>     > >      0L, 0L, 202L, 202L, 202L, 202L, 202L, 0L, 204L, 204L, 208L,
>>     > >      208L, 208L), sex = c(1L, 2L, 1L, 2L, 1L, 2L, 2L, 2L, 1L,
>>     > >      1L, 1L, 2L, 1L, 1L), affected = c(1L, NA, 1L, 0L, NA, 1L,
>>     > >      1L, 0L, 0L, 0L, 0L, 0L, 0L, 1L)), row.names = c("42", "43",
>>     > > "44", "45", "46", "47", "48", "49", "50", "51", "52", "53", 
>> "54",
>>     > > "55"), class = "data.frame"))
>>     > > d
>>     > >
>>     > > estoy interesado en obtener un archivo de texto "out.txt" con la
>>     > siguiente
>>     > > estructura:
>>     > >
>>     > >
>>     > > pedigree: 1
>>     > > ped id father mother sex affected
>>     > >    1  1      2      3   2        1
>>     > >    1  2      0      0   1        2
>>     > >    1  3      0      0   2        1
>>     > >    1  4      2      3   2        1
>>     > >    1  5      2      3   2        2
>>     > >    1  6      2      3   1        2
>>     > >    1  7      2      3   2        2
>>     > > pedigree: 2
>>     > > ped  id father mother sex affected
>>     > >    2 201      0      0   1        1
>>     > >    2 202      0      0   2       NA
>>     > >    2 203      0      0   1        1
>>     > >    2 204    201    202   2        0
>>     > >    2 205    201    202   1       NA
>>     > >    2 206    201    202   2        1
>>     > >    2 207    201    202   2        1
>>     > >    2 208    201    202   2        0
>>     > >    2 209      0      0   1        0
>>     > >    2 210    203    204   1        0
>>     > >    2 211    203    204   1        0
>>     > >    2 212    209    208   2        0
>>     > >    2 213    209    208   1        0
>>     > >    2 214    209    208   1        1
>>     > >
>>     > >
>>     > > La idea es relativamente simple:  guardar cada data.frame de
>>     "d" sin row
>>     > > labels y con el encabezado "pedigree: " seguido del número en
>>     la columna
>>     > > "ped".
>>     > >
>>     > > Alguna idea?  Por supuesto esto es una versión muy reducida
>>     del problema
>>     > > real.
>>     > >
>>     > > Muchísimas gracias por su ayuda.
>>     > >
>>     > > Saludos cordiales,
>>     > > Jorge.-
>>     > >
>>     > >       [[alternative HTML version deleted]]
>>     > >
>>     > > _______________________________________________
>>     > > R-help-es mailing list
>>     > > R-help-es using r-project.org <mailto:R-help-es using r-project.org>
>>     > > https://stat.ethz.ch/mailman/listinfo/r-help-es
>>     > > .
>>     > >
>>     >
>>     > --
>>     > Marcelino de la Cruz Rot
>>     > Depto. de Biología y Geología
>>     > Física y Química Inorgánica
>>     > Universidad Rey Juan Carlos
>>     > Móstoles España
>>     >
>>     >
>>
>>             [[alternative HTML version deleted]]
>>
>>     _______________________________________________
>>     R-help-es mailing list
>>     R-help-es using r-project.org <mailto:R-help-es using r-project.org>
>>     https://stat.ethz.ch/mailman/listinfo/r-help-es
>>
>>
>>
>> -- 
>> «...homines autem hominum causa esse generatos...»
>>
>> Cicero
>>
>

-- 
Marcelino de la Cruz Rot
Depto. de Biología y Geología
Física y Química Inorgánica
Universidad Rey Juan Carlos
Móstoles España



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