Lisann
Lisann

Reputation: 5855

combine results from a loop in one file

I create a loop like this one:

for (p in 1:nrow(outcomes)) {

    id <- apply(regulationtable, 1, function(i)
        sum(i[1:length(regulationtable)] != outcomes[p,])==0)

    idd <- as.matrix(id)
    test2 = subset(idd, idd[,1]==TRUE)

    result <- as.data.frame(rownames(test2))

    filename = paste("file", p, ".txt")

    write.table(result, filename)
}

The results of every loop will be saved as a file. I want to combine this results and create one file with all the results.

Can anyone help me with this?

Upvotes: 2

Views: 4386

Answers (1)

Sacha Epskamp
Sacha Epskamp

Reputation: 47541

With the append argument in write.table you can add lines to an existing file rather than overwriting them:

if (p == 1) 
{
  write.table(result, "file.txt") 
} else
{ 
  write.table(result, "file.txt", append = TRUE, col.names = FALSE)
}

Is this what you mean?

EDIT: You might want the first run to initialize it and not append, then each other run to not print the column names ( I do assume these are the same for each table).

Upvotes: 2

Related Questions