Projects/laydi
Projects
/
laydi
Archived
7
0
Fork 0
This repository has been archived on 2024-07-04. You can view files and clone it, but cannot push or open issues or pull requests.
laydi/r-laydi/laydi.R

31 lines
943 B
R

write.ftsv <- function(data, con, name="unnamed_dataset", rowdim="rows", coldim="cols") {
/* If con is a file name, open it */
opened.here = FALSE
if (is.character(con)){
con = file(con, "w")
opened.here = TRUE
}
/* Substitute all whitespace with underscores in identifiers */
rows <- paste(gsub("\\s", "_", rownames(data)), collapse=" ")
cols <- paste(gsub("\\s", "_", colnames(data)), collapse=" ")
/* Write header */
writeLines(c("# type: dataset",
paste("# dimension:", rowdim, rows, collapse=' '),
paste("# dimension:", coldim, cols, collapse=' '),
paste("# name:", name, collapse=' '),
""),
con=con)
/* Write matrix */
write.table(data, file=con, col.names=FALSE, row.names=FALSE, sep="\t")
/* If con was a string, close file now */
if (opened.here)
close(con)
}