[R] importing data
Ivan Calandra
ivan.calandra at u-bourgogne.fr
Mon Jan 28 10:32:11 CET 2013
What about this then:
list_of_datasets <- lapply(file_names, read.table, other_args_to_read.table)
Something that might then be useful is:
names(list_of_datasets) <- file_names
Does it do it now?
Ivan
--
Ivan CALANDRA
Université de Bourgogne
UMR CNRS/uB 6282 Biogéosciences
6 Boulevard Gabriel
21000 Dijon, FRANCE
+33(0)3.80.39.63.06
ivan.calandra at u-bourgogne.fr
http://biogeosciences.u-bourgogne.fr/calandra
Le 28/01/13 07:34, Ray Cheung a écrit :
> Thanks a million for all help provided!! I can do what I intend to
> using the "for loop". However, I'm still eager to try the list.files
> approach. Here is the error message that I got using Ivan's code:
>
> > list_of_dataset <- do.call(read.table, file_names)
> Error in do.call(read.table, file_names) : second argument must be a list
>
> Please advise.
>
> Ray
>
> On Sun, Jan 27, 2013 at 10:57 PM, Ivan Calandra
> <ivan.calandra at u-bourgogne.fr <mailto:ivan.calandra at u-bourgogne.fr>>
> wrote:
>
> Hi Ray!
>
> I'm insisting with list.files...!
>
> What about like this (untested)?
> file_names <- list.files(path="C:/.../data", pattern=".dat$",
> full.names=TRUE)
> list_of_dataset <- do.call(read.table, file_names)
>
> Let me know if this helps!
> Ivan
>
> -- Ivan CALANDRA Université de Bourgogne UMR CNRS/uB 6282
> Biogéosciences 6 Boulevard Gabriel 21000 Dijon, FRANCE
> +33(0)3.80.39.63.06 <tel:%2B33%280%293.80.39.63.06>
> ivan.calandra at u-bourgogne.fr <mailto:ivan.calandra at u-bourgogne.fr>
> http://biogeosciences.u-bourgogne.fr/calandra
>
> Le 26/01/13 10:03, Ray Cheung a écrit :
>> Thanks for your commands, Ivan and Michael! However, I am still
>> not producing the right codes. Would you please help me on
>> this? I've written the following codes. Please comment. Thank you
>> very much.
>> Task: Reading data1.dat to data1000.dat (with missing files) into
>> R. Missing files can be omitted in the list.
>> ###FUNCTION TO READ FILES
>> little_helpful <- function(n) {
>> file_name <- paste0("C:/.../data", n, ".dat")
>> read.table(file_name)
>> }
>> ###RETURN AN OBJECT WHICH CHECKS FOR THE EXISTENCE OF FILES
>> check <- function(n) {
>> a <- ifelse(file.exists(paste0("C:/.../data", n, ".dat")), 1, 0)
>> a
>> }
>> ###Combining the functions
>> IMPORT <- function(n) {
>> L <- check(1:n)
>> for (i in 1:n) {
>> if (L[i] == 1)
>> list_of_datasets <- lapply(i, little_helpful) else
>> list_of_datasets <- 0
>> }
>> list_of_datasets
>> }
>> Thanks for all comments.
>> Best Regards,
>> Ray
>>
>> On Fri, Jan 25, 2013 at 5:48 PM, Ivan Calandra
>> <ivan.calandra at u-bourgogne.fr
>> <mailto:ivan.calandra at u-bourgogne.fr>> wrote:
>>
>> Hi,
>>
>> Not sure this is what you need, but what about list.files()?
>> It can get you all the files from a given folder, and you
>> could then work this list with regular expressions for example.
>>
>> HTH,
>> Ivan
>>
>> --
>> Ivan CALANDRA
>> Université de Bourgogne
>> UMR CNRS/uB 6282 Biogéosciences
>> 6 Boulevard Gabriel
>> 21000 Dijon, FRANCE
>> +33(0)3.80.39.63.06 <tel:%2B33%280%293.80.39.63.06>
>> ivan.calandra at u-bourgogne.fr
>> <mailto:ivan.calandra at u-bourgogne.fr>
>> http://biogeosciences.u-bourgogne.fr/calandra
>>
>> Le 25/01/13 10:00, R. Michael Weylandt a écrit :
>>
>> On Fri, Jan 25, 2013 at 6:11 AM, Ray Cheung
>> <ray1728 at gmail.com <mailto:ray1728 at gmail.com>> wrote:
>>
>> Dear Michael,
>>
>> Thanks for your codes. However, lapply does not work
>> in my case since I've
>> some files missing in the data (say, the file
>> data101.dat). Do you have any
>> suggestions on this?? Thank you very much.
>>
>> You could simply add a test using file.exists() but I'm
>> not sure what
>> you want to do with the M matrix then -- omit the slice
>> (so the others
>> are all shifted down one) or fill it entirely with NA's.
>>
>> Michael
>>
>> ______________________________________________
>> R-help at r-project.org <mailto:R-help at r-project.org>
>> mailing list
>> https://stat.ethz.ch/mailman/listinfo/r-help
>> PLEASE do read the posting guide
>> http://www.R-project.org/posting-guide.html
>> and provide commented, minimal, self-contained,
>> reproducible code.
>>
>>
>> ______________________________________________
>> R-help at r-project.org <mailto:R-help at r-project.org> mailing list
>> https://stat.ethz.ch/mailman/listinfo/r-help
>> PLEASE do read the posting guide
>> http://www.R-project.org/posting-guide.html
>> and provide commented, minimal, self-contained, reproducible
>> code.
>>
>>
>
More information about the R-help
mailing list