2014-07-08 2 views
0

으로 확인하십시오. 내 폴더에 세 개의 Excel 파일이 있습니다. "a.csv, b.csv, c.csv" 나는 그것들이 같은 수의 열을 가지도록하고 싶다. (열에 대해 걱정할 필요가 없다.)Excel 파일 행을 R

질문 :

  1. 어떻게 각 파일의 행 수를 계산하기 위해? 파일 내가 R.에 갇혀 있어요

똑똑한 행이

  • 확인

    내 초안 R 코드 : 코드에 대한

    files <- read.csv("C:/Users/files","/",sep="") 
        for(i in 1:3) 
        { 
    
        filenames<-list() 
        files[[i]]<-read.csv(paste("C:/Users/files","/", 
            filenames[i], sep = "")) 
    
        rows<-files[[i]] 
        } 
        dim(rows) 
    
  • +0

    CSV 또는 Excel입니까? [this thread] (http://r.789695.n4.nabble.com/Fast-way-to-determine-number-of-lines-in-a-file-tt1472962.html#)의 응답을 살펴보십시오. a4693520) (BTW - crossposting discuoraged) - 아마도 뭔가 도움이 될 것입니다. 특히 파일이 CSV (또는 CSV로 변환 될 수있는 경우). – Dale

    +0

    데일 감사합니다! 나는 어제 그것을 알아 냈다. – user3780765

    답변

    0

    정확하게 확실하지가 제공하고 무엇을 뜻 "같은 행". 그러나 경우에 당신이보고, 같은 rownames을 의미 rownames과 동일? (대체 : all.equal) :

    files <- list() 
    for (i in c("a", "b", "c")) files[[i]] <- read.csv(file = paste(i, ".csv", sep=""), row.names=1) # assuming rownames where added and files saved e.g. with read.csv 
    for (i in 1:length(files)) { 
        print(rownames(files[[i]])) 
        if (!identical(rownames(files[[1]]), rownames(files[[i]]))) stop(paste("rownames of file ", i, "differ from file 1!")) 
    } 
    

    또는 경우 all(rownames(files[[1]]), rownames(files[[i]]), ...)

    같은 구성을 사용하는 당신은 단지 필요 ?가 사용 nrow 행 수 (볼 대한 호기심 nROW ...?)

    sapply(files, nrow) == nrow(files[[1]]) 
    any(sapply(files, nrow) == nrow(files[[1]])) 
    which(! sapply(files, nrow) == nrow(files[[1]])) 
    

    nrow 다릅니다 파일 => FALSE (파일 [1]), 또는 만약 어떤 파일 또는 다른 시간 (이름과 주어진 nrow) 파일은 첫 번째와 다른)

    +0

    Martin 고맙습니다! 각 파일의 행 수를 계산하고 싶습니다. 나는 당신의 코드를 먼저 시도 할 것이다. 도와 주셔서 감사합니다! – user3780765

    +0

    은 행 번호가 중요하다고 말한 이후 작업을 단순화하는 코드를 추가했습니다. – Martin

    -1

    nrow(dataFrame) 당신의 친구