-1

フォルダー内の 1 つのファイルに対してのみこのスクリプトを実行すると、次のようになります。

emboss<-read.table("emboss_012.ss",header=T)
x<-table(emboss[,2],emboss[,3])/NROW(emboss[,3])
y<-as.vector(t(x))
nms <- expand.grid(colnames(x), rownames(x))
names(y) <- paste( nms[,2],nms[,1],sep="")
write.table(t(y), file = "test3.csv",append=TRUE)

望ましい結果が得られます

ただし、フォルダー内のすべてのファイルに対してこれを一度に行うと、ランダムな NA が表示されます。私はこれをやっています:

runForAll <- function(x) {
  emboss <- read.table(x,header=T)
  x <- table(emboss[,2],emboss[,3])/NROW(emboss[,3])
  y <- as.vector(t(x))
  nms <- expand.grid(colnames(x), rownames(x))
  names(y) <- paste( nms[,2],nms[,1],sep="")
  return(t(y))
}

my.files <- list.files(pattern = "emboss_\\d+\\.ss")
outputs <- lapply(my.files, FUN = runForAll)   

library(plyr)
one.header.output <- rbind.fill.matrix(outputs)
write.table(one.header.output, file = "nontpsec.csv")

私のファイルはここにあります:

https://drive.google.com/folderview?id=0B0iDswLYaZ0zWjQ4RjdnMEUzUW8&usp=sharing

これは非常に奇妙であり、特にすべてのファイルを一度にループしても、他のすべてのデータが正しいため、なぜそれが起こっているのかわかりません。

4

1 に答える 1