Saving analyses to file
The following instructions work in the DataSHIELD test environment only.
Write a table to .csv
- use the
write.csv
orwrite.table
R functions to write tables to file
#output to the R console > ds.table2D(x='D$DIS_DIAB', y='D$GENDER') #prints to the current working directory into a file called test_table.csv > write.csv(x=ds.table2D(x='D$DIS_DIAB', y='D$GENDER'), file = "test_table.csv")
Write an image to .png, .pdf, .ps
In R it is possible to print sequential images on sequential pages.
- To do this an image writing function such as
png()
,pdf()
orpostscript()
needs to be opened. - Each file to be written must be put on seperate lines
- The print device needs closing.
- All images are written to the current working directory in R.
#png example png(filename = "image_name.png", width = 900, height = 700, units = "px", pointsize = 12, bg = "white", type = "cairo") ds.histogram(x='D$LAB_HDL') dev.off()
- The pdf example prints the output of two seperate
ds.histogram
commands onto seperate pages. Each line is output to a seperate page in the pdf.
# a pdf example pdf (file="image_name.pdf") ds.histogram(x='D$LAB_HDL') ds.histogram(x='D$LAB_HDL', type='split') dev.off()
# a postscript example postscript(file= "image_name.ps", paper="special", width = 9, height = 7, onefile = TRUE, horizontal=FALSE) ds.histogram(x='D$LAB_HDL') ds.histogram(x='D$LAB_HDL', type='split') dev.off()
Write the R console screen to file
In some cases the non-disclosive data used to create an image may be required, this can be printed to file using the capture.output
R function:
# print to file the non-disclosive data that comprises a histogram out<-capture.output(ds.histogram(x='D$LAB_HDL')) cat(out,file="name.txt",sep="\n",append=TRUE)
All arguments to customise the above functions can be found in their respective function manual pages.
DataSHIELD Wiki by DataSHIELD is licensed under a Creative Commons Attribution-ShareAlike 4.0 International License. Based on a work at http://www.datashield.ac.uk/wiki