1つのフォルダー内の既存のtrain.csvファイルに対してtest-results.csvファイルのcorssproductを取得するスクリプトがあります
編集済み-いくつかの修正が追加されました
mytest <- function(data) {
data01 <- as.matrix(read.csv(file = "test/test-results.csv", sep = ",", header=FALSE))
data02 <- as.matrix(read.csv(file = data, sep = ",", header=FALSE))
test <- list()
test01<- list()
test02<- list()
i<- 1
while (i <= 25){
test01[[i]] <- c(data01[i, ])
test02[[i]] <- c(data02[i, ])
test[[i]]<- crossprod(test01[[i]],test02[[i]])
i <- i+1
}
return(mytest)
}
result <- lapply(list.files(pattern='^tain.*\\.csv', recursive=TRUE, full.names = TRUE),test)
for (i in seq(length(result))) {
write.csv(do.call(cbind,result),'result.csv', row.names = FALSE)
}
同じ構造のフォルダがいくつかあります
Main|experiment 01|test|test-results.csv, train01.csv, train02.csv, train03.csv
Main|experiment 02|test|test-results.csv, train01.csv, train02.csv
可能であれば、これらすべてのフォルダーに同じスクリプトをresults-experiment01.csv
適用して、100回適用するのではなく、結果(たとえば)を返すスクリプトを作成したいと思います。
これがひどいように見える場合は申し訳ありません...Rの新機能