Message-ID: <1571249797.2635333.1625858663382@mail.yahoo.com>
Date: 2021-07-09T19:24:23Z
From: Kai Yang
Subject: error message from read.csv in loop
In-Reply-To: <CA+Mj9gV2PWNGediiKhJt37KYsNJAxUp3=q4KFi8H9SND8YAQvQ@mail.gmail.com>
Hi Migdonio,
I did try your code:
# Initialize the rr variable as a list.
rr <- as.list(rep(NA, nrow(ora)))
# Run the for-loop to store all the CSVs in rr.
for (j in 1:nrow(ora))
{
? ? ? ? mycol ?<- ora[j,"fname"]
? ? ? ? mycsv ?<- paste0(mycol,".csv")
? ? ? ? rdcsv ?<- noquote(paste0("w:/project/_Joe.B/Oracle/data/", mycsv))
? ? ? ? rr[[j]] ? ? <- read.csv(rdcsv)
}
this code is working, but rr is not a data frame, R said: Large list ( 20 elements .....). how can I use it as a data frame one by one?
Thank you for your help
Kai
On Friday, July 9, 2021, 11:39:59 AM PDT, Migdonio Gonz?lez <migdonio.gonzalez02 at gmail.com> wrote:
It seems that your problem is that you are using single quotes inside of the double quotes. This is not necessary. Here is the corrected for-loop:
for (j in 1:nrow(ora))
{
? ? ? ? mycol ?<- ora[j,"fname"]
? ? ? ? mycsv ?<- paste0(mycol,".csv")
? ? ? ? rdcsv ?<- noquote(paste0("w:/project/_Joe.B/Oracle/data/", mycsv))
? ? ? ? rr ? ? <- read.csv(rdcsv)
}
Also note that the rr variable will only store the last CSV, not all CSV. You will need to initialize the rr variable as a list to store all CSVs if that is what you require. Something like this:
# Initialize the rr variable as a list.
rr <- as.list(rep(NA, nrow(ora)))
# Run the for-loop to store all the CSVs in rr.
for (j in 1:nrow(ora))
{
? ? ? ? mycol ?<- ora[j,"fname"]
? ? ? ? mycsv ?<- paste0(mycol,".csv")
? ? ? ? rdcsv ?<- noquote(paste0("w:/project/_Joe.B/Oracle/data/", mycsv))
? ? ? ? rr[[j]] ? ? <- read.csv(rdcsv)
}
RegardsMigdonio G.
On Fri, Jul 9, 2021 at 1:10 PM Kai Yang via R-help <r-help at r-project.org> wrote:
Hello List,
I use for loop to read csv difference file into data frame rr.? The data frame rr will be deleted after a comparison and go to the next csv file.? Below is my code:
for (j in 1:nrow(ora))
{
? mycol? <- ora[j,"fname"]
? mycsv? <- paste0(mycol,".csv'")
? rdcsv? <- noquote(paste0("'w:/project/_Joe.B/Oracle/data/", mycsv))
? rr? ? ?<- read.csv(rdcsv)
}
but when I run this code, I got error message below:
Error in file(file, "rt") : cannot open the connection
In addition: Warning message:
In file(file, "rt") :
? cannot open file ''w:/project/_Joe.B/Oracle/data/ASSAY_DEFINITIONS.csv'': No such file or directory
so, I checked the rdcsv and print it out, see below:
[1] 'w:/project/_Joe.B/Oracle/data/ASSAY_DEFINITIONS.csv'
[1] 'w:/project/_Joe.B/Oracle/data/ASSAY_DISCRETE_VALUES.csv'
[1] 'w:/project/_Joe.B/Oracle/data/ASSAY_QUESTIONS.csv'
[1] 'w:/project/_Joe.B/Oracle/data/ASSAY_RUNS.csv'
[1] 'w:/project/_Joe.B/Oracle/data/DATA_ENTRY_PAGES.csv'
[1] 'w:/project/_Joe.B/Oracle/data/DISCRETE_VALUES.csv'
[1] 'w:/project/_Joe.B/Oracle/data/ENTRY_GROUPS.csv'
[1] 'w:/project/_Joe.B/Oracle/data/GEMD_CODELIST_GROUPS.csv'
[1] 'w:/project/_Joe.B/Oracle/data/GEMD_CODELIST_VALUES.csv'
[1] 'w:/project/_Joe.B/Oracle/data/GEMD_LOT_DEFINITIONS.csv'
[1] 'w:/project/_Joe.B/Oracle/data/GEMD_SAMPLES.csv'
[1] 'w:/project/_Joe.B/Oracle/data/MOLECULAR_WAREHOUSE.csv'
[1] 'w:/project/_Joe.B/Oracle/data/QUESTION_DEFINITIONS.csv'
[1] 'w:/project/_Joe.B/Oracle/data/QUESTION_GROUPS.csv'
[1] 'w:/project/_Joe.B/Oracle/data/RESPONDENTS.csv'
[1] 'w:/project/_Joe.B/Oracle/data/RESPONSES.csv'
[1] 'w:/project/_Joe.B/Oracle/data/SAMPLE_LIST.csv'
[1] 'w:/project/_Joe.B/Oracle/data/SAMPLE_LIST_NAMES.csv'
[1] 'w:/project/_Joe.B/Oracle/data/SAMPLE_PLATE_ADDRESSES.csv'
[1] 'w:/project/_Joe.B/Oracle/data/STORAGE_UNITS.csv'
it seems correct. I copy and paste it into a code :
?rr? ? ?<- read.csv( 'w:/project/_Joe.B/Oracle/data/RESPONDENTS.csv')
and it works fine.
Can someone help me debug where is the problem in my for loop code?
Thanks,
Kai
? ? ? ? [[alternative HTML version deleted]]
______________________________________________
R-help at r-project.org mailing list -- To UNSUBSCRIBE and more, see
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.
[[alternative HTML version deleted]]