簡體   English   中英

無法讀取CSV檔案

[英]Cannot Read csv file

我是R的新手,但我有一個問題:我有一組csv文件,每個文件都有3個帶有數字值的列。 我正在運行一組說明來創建類別,這些類別使我可以對齊每個文件的圖形。 到目前為止,這是我的命令集:

myFiles<-dir("C:\\Data\\")
myDeadVols<-as.matrix(read.csv("C:\\Data\\Dead Volumes.csv", header=T, sep="|", row.names=1))

myDeadVolsVec <- as.numeric(myDeadVols[,"t2_min"])*60 + as.numeric(myDeadVols[,"t2_s"])

names(myDeadVolsVec) <- myDeadVols[,"fileName"]

sampAnot <- names(myDeadVolsVec)

names(sampAnot) <- sampAnot

polyRead <- function(fileNames=NULL, mySep="|"){

dataList <- list()

for(tmpName in fileNames){dataList[[tmpName]] <-as.matrix(read.table(tmpName, header=TRUE, sep=mySep))}
return(dataList)}

polyReadMaritza <- function(fileNames=NULL, mySep="|", file2void=NA, fracTime=35, dataPerFrac=173){

dataList <- list()
for(tmpName in fileNames){
tmpMat<-as.matrix(read.table(tmpName, header=FALSE, sep=mySep))
tmpVoidTime<-file2void[tmpName]
tmpVoidPoints<-tmpVoidTime/fracTime*dataPerFrac
tmpAdder<-matrix(ncol=3, nrow=as.integer(tmpVoidPoints), data=0)
tmpMat<-rbind(tmpAdder, tmpMat)
tmpEvent<-rep(0, dim(tmpMat)[1])
fractMoves<-c(1:length(tmpEvent))[which(c(1:length(tmpEvent))%%dataPerFrac==0)]
tmpEvent[fractMoves]<-1
tmpMat[,3]<-tmpEvent
dataList[[tmpName]] <- tmpMat
colnames(dataList[[tmpName]])<-c("Distance.mm.", "Absorbance", "Event")}
return(dataList)}

到目前為止,一切似乎還不錯,但是當我嘗試輸入fllowin命令時:

myDataList <- polyReadMaritza(myFiles, mySep="\t", file2void=myDeadVolsVec)

我有這個錯誤:

file(file,“ rt”)中的錯誤:無法打開連接。 另外:警告消息:在文件(文件,“ rt”)中:無法打開文件'Beads.csv':沒有此類文件或目錄

現在,“ Beads.csv”的路徑為C:\\ Data \\ Beads.csv,所以我認為這是因為它沒有讀取“ Beads.csv”的完整路徑(這是文件的第一個),但是我認為使用“ myFiles <-dir(“ C:\\ Data \\”)“,我已經指定了路徑。 歡迎任何幫助

您實際上已經獲得了所需目錄中的文件列表。

fileDir = 'C:/Data'
myFiles = list.files(path=fileDir, pattern='*.csv')

然后,當您調用read.csv您必須使用以下命令為R提供完整的文件路徑:

for(file in myFiles){
    read.csv(file.path(fileDir,file))
}

dir返回的值不包含路徑。 dir “ full.names”的默認值為FALSE,因此,除非您的工作目錄為“ c:// Data //”, read.csv調用不會在正確的位置查找。 嘗試:

myFiles <- dir("C:\\Data\\", pattern= "[.]csv", full.names-TRUE)

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM