Warning: file_get_contents(/data/phpspider/zhask/data//catemap/4/r/70.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
R 使用循环读取特殊CSV数据_R_Csv - Fatal编程技术网

R 使用循环读取特殊CSV数据

R 使用循环读取特殊CSV数据,r,csv,R,Csv,我有点小问题,我相信你们能帮我!我在directionary文件夹中有一个文件夹,包含2000多个.csv文件。它被称为“所有数据”。我想在R中读取它们,并将它们保存在向量中。我知道以前有人问过这个问题。。。这就是我得到的: setwd("C:/Users/Flo Chi/Documents/all Data") ldf <- list() csvliste <- dir(pattern="*.csv") for(i in 1:length(csvliste)){ldf[[i]] &

我有点小问题,我相信你们能帮我!我在directionary文件夹中有一个文件夹,包含2000多个.csv文件。它被称为“所有数据”。我想在R中读取它们,并将它们保存在向量中。我知道以前有人问过这个问题。。。这就是我得到的:

setwd("C:/Users/Flo Chi/Documents/all Data")
ldf <- list()
csvliste <- dir(pattern="*.csv")
for(i in 1:length(csvliste)){ldf[[i]] <- read.csv(csvliste[i])}
setwd(“C:/Users/Flo Chi/Documents/all Data”)

ldf如果您假设唯一可能的数据形式是a)只有一列数字数据,或者b)如果有两列,则第一列全部缺失,那么您可以采取几种方法

下面的示例在发现第一列中仅缺少值的数据帧时使用第二列。但只要有两列(不管第一列中有什么),就可以调整为只取第二列

setwd(“C:/Users/Flo Chi/Documents/all Data”)

ldf将read.csv(csvliste[i])更改为read.csv(csvliste[i])[,2]
dir
采用正则表达式作为模式,而不是glob.Thx,这几乎是完美的!但是我需要,例如ldf[[1]]是一个普通的向量,这样我就可以处理这些数字=>例如ldf[[1]][1]。。。“3327”=>ldf[[1]][1]+ldf[[1]][2]=。。。。在这一点上,向量显示了数字和它们的位置,但我只需要这些数字,我需要处理它们。也许你知道这是怎么回事?如果你想要向量而不是数据帧,你可以做一些替换。使用
df嘿,我刚试过。应该是这样吗?=>setwd(“C:/Users/Flo Chi/Documents/alle Daten”)ldf
setwd("C:/Users/Flo Chi/Documents/all Data")
ldf <- lapply(dir(pattern = "*.csv"),
        function(i){
            df <- read.csv(i)
            if (all(is.na(df[, 1]))) df <- df[, 2, drop=FALSE]
            df
        })