Hola, tengo que leer más de 2000 ficheros en un programa largo de estimación sobre imágenes médicas, con una estructura como ésta: desde "IM-0005-0001.dcm" hasta "IM-0005-2021.dcm" Si hago esto: ui <- NULL for (i in 1:8){ ui[i] <- paste("IM-0005-", i,".dcm", sep="") } ui Obtendría: [1] "IM-0005-1.dcm" "IM-0005-2.dcm" "IM-0005-3.dcm" "IM-0005-4.dcm" [5] "IM-0005-5.dcm" "IM-0005-6.dcm" "IM-0005-7.dcm" "IM-0005-8.dcm" pero el problema es que necesito justo formatos del tipo 0001, 0002, 0003... no del tipo 1, 2, 3... ¿Sabeis cómo hacerlo? Y un saludo a tod en s jm~ _______________________________ J. Miguel Marin http://www.est.uc3m.es/jmmarin Dep. of Statistics University Carlos III of Madrid Spain (E.U.)
x <- paste( "00000", 1:10, sep = "" ) fin <- nchar(x) inicio <- fin - 5 substr(x, inicio, fin) Un saludo, Carlos J. Gil Bellosta http://www.datanalytics.com El día 20 de abril de 2012 19:33, J. Miguel Marin <jmmarin en est-econ.uc3m.es> escribió:> > Hola, > > tengo que leer más de 2000 ficheros en un programa largo de estimación sobre > imágenes médicas, con una estructura como ésta: > > desde "IM-0005-0001.dcm" hasta "IM-0005-2021.dcm" > > Si hago esto: > > ui <- NULL > for (i in 1:8){ > ui[i] <- paste("IM-0005-", i,".dcm", sep="") > } > ui > > Obtendría: > > [1] "IM-0005-1.dcm" "IM-0005-2.dcm" "IM-0005-3.dcm" "IM-0005-4.dcm" > [5] "IM-0005-5.dcm" "IM-0005-6.dcm" "IM-0005-7.dcm" "IM-0005-8.dcm" > > > pero el problema es que necesito justo formatos del tipo 0001, 0002, 0003... > no del tipo 1, 2, 3... > > ¿Sabeis cómo hacerlo? > > Y un saludo a tod en s > > jm~ > > _______________________________ > > J. Miguel Marin > > http://www.est.uc3m.es/jmmarin > > Dep. of Statistics > University Carlos III of Madrid > Spain (E.U.) > > _______________________________________________ > R-help-es mailing list > R-help-es en r-project.org > https://stat.ethz.ch/mailman/listinfo/r-help-es
Hola, muchas gracias por la respuesta tan rápida :D También he seguido investigando el asunto un rato más y encontré otra solución: ui <- NULL for (i in 1:2020){ ui[i] <- paste("IM-0005-", sprintf("%04.0f", i), ".dcm", sep="") } ui La cuestión parece que es usar formato tipo "C" en la salida. Y de nuevo muchas gracias> x <- paste( "00000", 1:10, sep = "" ) > fin <- nchar(x) > inicio <- fin - 5 > substr(x, inicio, fin) > > Un saludo, > > Carlos J. Gil Bellosta > http://www.datanalytics.com > > El día 20 de abril de 2012 19:33, J. Miguel Marin > <jmmarin en est-econ.uc3m.es> escribió: >> >> Hola, >> >> tengo que leer más de 2000 ficheros en un programa largo de estimación sobre >> imágenes médicas, con una estructura como ésta: >> >> desde "IM-0005-0001.dcm" hasta "IM-0005-2021.dcm" >> >> Si hago esto: >> >> ui <- NULL >> for (i in 1:8){ >> ui[i] <- paste("IM-0005-", i,".dcm", sep="") >> } >> ui >> >> Obtendría: >> >> [1] "IM-0005-1.dcm" "IM-0005-2.dcm" "IM-0005-3.dcm" "IM-0005-4.dcm" >> [5] "IM-0005-5.dcm" "IM-0005-6.dcm" "IM-0005-7.dcm" "IM-0005-8.dcm" >> >> >> pero el problema es que necesito justo formatos del tipo 0001, 0002, 0003... >> no del tipo 1, 2, 3... >> >> ¿Sabeis cómo hacerlo? >> >> Y un saludo a tod en s >> >> jm~ >> >> _______________________________ >> >> J. Miguel Marin >> >> http://www.est.uc3m.es/jmmarin >> >> Dep. of Statistics >> University Carlos III of Madrid >> Spain (E.U.) >> >> _______________________________________________ >> R-help-es mailing list >> R-help-es en r-project.org >> https://stat.ethz.ch/mailman/listinfo/r-help-es >jm~ _______________________________ J. Miguel Marin http://www.est.uc3m.es/jmmarin Dep. of Statistics University Carlos III of Madrid Spain (E.U.)
Hola Miguel, Podrias usar formatC(1:10, width = 6, flag = "0") #[1] "000001" "000002" "000003" "000004" "000005" "000006" "000007" "000008" "000009" # [10] "000010" Un saludo, Jorge.- 2012/4/20 J. Miguel Marin <>> > Hola, > > tengo que leer más de 2000 ficheros en un programa largo de estimación > sobre imágenes médicas, con una estructura como ésta: > > desde "IM-0005-0001.dcm" hasta "IM-0005-2021.dcm" > > Si hago esto: > > ui <- NULL > for (i in 1:8){ > ui[i] <- paste("IM-0005-", i,".dcm", sep="") > } > ui > > Obtendría: > > [1] "IM-0005-1.dcm" "IM-0005-2.dcm" "IM-0005-3.dcm" "IM-0005-4.dcm" > [5] "IM-0005-5.dcm" "IM-0005-6.dcm" "IM-0005-7.dcm" "IM-0005-8.dcm" > > > pero el problema es que necesito justo formatos del tipo 0001, 0002, > 0003... no del tipo 1, 2, 3... > > ¿Sabeis cómo hacerlo? > > Y un saludo a tod@s > > jm~ > > ______________________________**_ > > J. Miguel Marin > > http://www.est.uc3m.es/jmmarin > > Dep. of Statistics > University Carlos III of Madrid > Spain (E.U.) > > ______________________________**_________________ > R-help-es mailing list > R-help-es@r-project.org > https://stat.ethz.ch/mailman/**listinfo/r-help-es<https://stat.ethz.ch/mailman/listinfo/r-help-es> >[[alternative HTML version deleted]]
Llego tarde pero para completar el tres, os muestro lo que utilizo (vale siempre que no useis windoze ;-): system("seq -w 1 2500",intern=T) Es corto a la par que elegante y se basa en la orde 'seq' de linux que me saca de muchos apuros. Saludos El 20/04/12 19:33, J. Miguel Marin escribió:> > Hola, > > tengo que leer más de 2000 ficheros en un programa largo de estimación > sobre imágenes médicas, con una estructura como ésta: > > desde "IM-0005-0001.dcm" hasta "IM-0005-2021.dcm" > > Si hago esto: > > ui <- NULL > for (i in 1:8){ > ui[i] <- paste("IM-0005-", i,".dcm", sep="") > } > ui > > Obtendría: > > [1] "IM-0005-1.dcm" "IM-0005-2.dcm" "IM-0005-3.dcm" "IM-0005-4.dcm" > [5] "IM-0005-5.dcm" "IM-0005-6.dcm" "IM-0005-7.dcm" "IM-0005-8.dcm" > > > pero el problema es que necesito justo formatos del tipo 0001, 0002, > 0003... no del tipo 1, 2, 3... > > ¿Sabeis cómo hacerlo? > > Y un saludo a tod en s > > jm~ > > _______________________________ > > J. Miguel Marin > > http://www.est.uc3m.es/jmmarin > > Dep. of Statistics > University Carlos III of Madrid > Spain (E.U.) > > _______________________________________________ > R-help-es mailing list > R-help-es en r-project.org > https://stat.ethz.ch/mailman/listinfo/r-help-es-- ____________________________________________________________ José Antonio Palazón Ferrando Profesor Titular. Departamento de Ecología e Hidrología. Facultad de Biología. Universidad de Murcia. Campus Universitario de Espinardo 30100 MURCIA-SPAIN Telf: +34 968 36 49 80 Fax : +34 968 36 39 63 Email: palazon en um.es