2010-11-28 07:24:42 +08:00
|
|
|
\name{gsa.getargs}
|
|
|
|
|
\alias{gsa.getargs}
|
* Added an R package, "gsalib", providing a place to store common, useful, documented R methods. To use this module, you must follow three steps:
1) Build the module with the following command:
$ ant gsalib
2) Add the module path to your ~/.Rprofile file:
.libPaths("/path/to/Sting/trunk/R/")
3) At the top of each R script that will use the library, include the line:
library(gsalib)
You can now use the package like any other R package. To get high-level documentation, supply the following command to R:
help(gsalib)
The methods contained herein are:
getargs : A method to easily provide arguments to interactive and non-interactive scripts.
Prints out a help message specifying how the script should be run if no arguments
or "-h" is provided. Very helpful when you're writing an R-script piecemeal in
interactive mode, then want to make it a command-line program.
plot.venn : Plots a two-way or three-way proportional Venn diagram.
read.eval : Reads VariantEval output that's formatted in R style.
read.gatkreport : Reads GATKReport output.
gsa.message : Emits a message with the prefix "[gsalib]" to stdout.
gsa.warn : Emits a warning message with the prefix "[gsalib] Warning:" to stdout.
gsa.error : Emits an error message with the prefix "[gsalib] Error: to stdout, calls traceback()
and halts execution.
Documentation on each of these methods can be obtained by typing "help(method_name)" at the R prompt.
* Retired GATKReport.R, as that functionality has now been moved to gsalib.
* Retired gsacommons, as that functionality has been split between gsalib and VariantReport.R.
* Modified VariantReport.R to make use of gsalib. The script now uses the getargs() method to provide the user with some information as to the proper way to run the script. Documentation on how to prepare output is given at http://www.broadinstitute.org/gsa/wiki/index.php/VariantEval .
* Added 'gsalib' target to build.xml file. Running "ant gsalib" will compile this module and place the R-ready package in R/gsalib .
git-svn-id: file:///humgen/gsa-scr1/gsa-engineering/svn_contents/trunk@4416 348d0f76-0448-11de-a6fe-93d51630548a
2010-10-04 08:27:59 +08:00
|
|
|
\title{
|
|
|
|
|
Get script arguments
|
|
|
|
|
}
|
|
|
|
|
\description{
|
|
|
|
|
Get script arguments given a list object specifying arguments and documentation. Can be used in command-line or interactive mode. This is helpful when developing scripts in interactive mode that will eventually become command-line programs. If no arguments are specified or help is requested in command-line mode, the script will print out a usage statement with available arguments and exit.
|
|
|
|
|
}
|
|
|
|
|
\usage{
|
2010-11-28 07:24:42 +08:00
|
|
|
gsa.getargs(argspec, doc = NA)
|
* Added an R package, "gsalib", providing a place to store common, useful, documented R methods. To use this module, you must follow three steps:
1) Build the module with the following command:
$ ant gsalib
2) Add the module path to your ~/.Rprofile file:
.libPaths("/path/to/Sting/trunk/R/")
3) At the top of each R script that will use the library, include the line:
library(gsalib)
You can now use the package like any other R package. To get high-level documentation, supply the following command to R:
help(gsalib)
The methods contained herein are:
getargs : A method to easily provide arguments to interactive and non-interactive scripts.
Prints out a help message specifying how the script should be run if no arguments
or "-h" is provided. Very helpful when you're writing an R-script piecemeal in
interactive mode, then want to make it a command-line program.
plot.venn : Plots a two-way or three-way proportional Venn diagram.
read.eval : Reads VariantEval output that's formatted in R style.
read.gatkreport : Reads GATKReport output.
gsa.message : Emits a message with the prefix "[gsalib]" to stdout.
gsa.warn : Emits a warning message with the prefix "[gsalib] Warning:" to stdout.
gsa.error : Emits an error message with the prefix "[gsalib] Error: to stdout, calls traceback()
and halts execution.
Documentation on each of these methods can be obtained by typing "help(method_name)" at the R prompt.
* Retired GATKReport.R, as that functionality has now been moved to gsalib.
* Retired gsacommons, as that functionality has been split between gsalib and VariantReport.R.
* Modified VariantReport.R to make use of gsalib. The script now uses the getargs() method to provide the user with some information as to the proper way to run the script. Documentation on how to prepare output is given at http://www.broadinstitute.org/gsa/wiki/index.php/VariantEval .
* Added 'gsalib' target to build.xml file. Running "ant gsalib" will compile this module and place the R-ready package in R/gsalib .
git-svn-id: file:///humgen/gsa-scr1/gsa-engineering/svn_contents/trunk@4416 348d0f76-0448-11de-a6fe-93d51630548a
2010-10-04 08:27:59 +08:00
|
|
|
}
|
|
|
|
|
\arguments{
|
|
|
|
|
\item{argspec}{
|
|
|
|
|
A list object. Each key is an argument name. The value is another list object with a 'value' and 'doc' keys. For example:
|
|
|
|
|
\preformatted{argspec = list(
|
|
|
|
|
arg1 = list(value=10, doc="Info for optional arg1"),
|
|
|
|
|
arg2 = list(value=NA, doc="Info for required arg2")
|
|
|
|
|
);
|
|
|
|
|
}
|
|
|
|
|
|
2010-11-28 07:24:42 +08:00
|
|
|
If the value provided is NA, the argument is considered required and must be specified when the script is invoked. For command-line mode, this means the argument must be specified on the command-line. In interactive mode, there are two ways of specifying these arguments. First, if a properly formatted list argument called 'cmdargs' is present in the current environment (i.e. the object returned by gsa.getargs() from a previous invocation), the value is taken from this object. Otherwise, the argument is prompted for.
|
* Added an R package, "gsalib", providing a place to store common, useful, documented R methods. To use this module, you must follow three steps:
1) Build the module with the following command:
$ ant gsalib
2) Add the module path to your ~/.Rprofile file:
.libPaths("/path/to/Sting/trunk/R/")
3) At the top of each R script that will use the library, include the line:
library(gsalib)
You can now use the package like any other R package. To get high-level documentation, supply the following command to R:
help(gsalib)
The methods contained herein are:
getargs : A method to easily provide arguments to interactive and non-interactive scripts.
Prints out a help message specifying how the script should be run if no arguments
or "-h" is provided. Very helpful when you're writing an R-script piecemeal in
interactive mode, then want to make it a command-line program.
plot.venn : Plots a two-way or three-way proportional Venn diagram.
read.eval : Reads VariantEval output that's formatted in R style.
read.gatkreport : Reads GATKReport output.
gsa.message : Emits a message with the prefix "[gsalib]" to stdout.
gsa.warn : Emits a warning message with the prefix "[gsalib] Warning:" to stdout.
gsa.error : Emits an error message with the prefix "[gsalib] Error: to stdout, calls traceback()
and halts execution.
Documentation on each of these methods can be obtained by typing "help(method_name)" at the R prompt.
* Retired GATKReport.R, as that functionality has now been moved to gsalib.
* Retired gsacommons, as that functionality has been split between gsalib and VariantReport.R.
* Modified VariantReport.R to make use of gsalib. The script now uses the getargs() method to provide the user with some information as to the proper way to run the script. Documentation on how to prepare output is given at http://www.broadinstitute.org/gsa/wiki/index.php/VariantEval .
* Added 'gsalib' target to build.xml file. Running "ant gsalib" will compile this module and place the R-ready package in R/gsalib .
git-svn-id: file:///humgen/gsa-scr1/gsa-engineering/svn_contents/trunk@4416 348d0f76-0448-11de-a6fe-93d51630548a
2010-10-04 08:27:59 +08:00
|
|
|
}
|
|
|
|
|
|
|
|
|
|
\item{doc}{
|
|
|
|
|
An optional string succinctly documenting the purpose of the script.
|
|
|
|
|
}
|
|
|
|
|
}
|
|
|
|
|
\details{
|
|
|
|
|
Interactive scripts typically make use of hardcoded filepaths and parameter settings. This makes testing easy, but generalization to non-interactive mode more difficult. This utility provides a mechanism for writing scripts that work properly in both interactive and command-line modes.
|
|
|
|
|
|
|
|
|
|
To use this method, specify a list with key-value pairs representing the arguments as specified above. In command-line mode, if no arguments are specified or the user specifies '-h' or '-help' anywhere on the command string, a help message indicating available arguments, their default values, and some documentation about the argument are provided.
|
|
|
|
|
}
|
|
|
|
|
\value{
|
|
|
|
|
Returns a list with keys matching the argspec and values representing the specified arguments.
|
|
|
|
|
|
|
|
|
|
\item{arg1 }{Value for argument 1}
|
|
|
|
|
\item{arg2 }{Value for argument 2}
|
|
|
|
|
...etc.
|
|
|
|
|
}
|
|
|
|
|
\references{
|
|
|
|
|
%% ~put references to the literature/web site here ~
|
|
|
|
|
}
|
|
|
|
|
\author{
|
|
|
|
|
Kiran Garimella
|
|
|
|
|
}
|
|
|
|
|
\examples{
|
|
|
|
|
argspec = list(
|
|
|
|
|
file = list(value="/my/test.vcf", doc="VCF file"),
|
|
|
|
|
verbose = list(value=0, doc="If 1, set verbose mode"),
|
|
|
|
|
test2 = list(value=2.3e9, doc="Another argument that does stuff")
|
|
|
|
|
);
|
|
|
|
|
|
2010-11-28 07:24:42 +08:00
|
|
|
cmdargs = gsa.getargs(argspec, doc="My test program");
|
* Added an R package, "gsalib", providing a place to store common, useful, documented R methods. To use this module, you must follow three steps:
1) Build the module with the following command:
$ ant gsalib
2) Add the module path to your ~/.Rprofile file:
.libPaths("/path/to/Sting/trunk/R/")
3) At the top of each R script that will use the library, include the line:
library(gsalib)
You can now use the package like any other R package. To get high-level documentation, supply the following command to R:
help(gsalib)
The methods contained herein are:
getargs : A method to easily provide arguments to interactive and non-interactive scripts.
Prints out a help message specifying how the script should be run if no arguments
or "-h" is provided. Very helpful when you're writing an R-script piecemeal in
interactive mode, then want to make it a command-line program.
plot.venn : Plots a two-way or three-way proportional Venn diagram.
read.eval : Reads VariantEval output that's formatted in R style.
read.gatkreport : Reads GATKReport output.
gsa.message : Emits a message with the prefix "[gsalib]" to stdout.
gsa.warn : Emits a warning message with the prefix "[gsalib] Warning:" to stdout.
gsa.error : Emits an error message with the prefix "[gsalib] Error: to stdout, calls traceback()
and halts execution.
Documentation on each of these methods can be obtained by typing "help(method_name)" at the R prompt.
* Retired GATKReport.R, as that functionality has now been moved to gsalib.
* Retired gsacommons, as that functionality has been split between gsalib and VariantReport.R.
* Modified VariantReport.R to make use of gsalib. The script now uses the getargs() method to provide the user with some information as to the proper way to run the script. Documentation on how to prepare output is given at http://www.broadinstitute.org/gsa/wiki/index.php/VariantEval .
* Added 'gsalib' target to build.xml file. Running "ant gsalib" will compile this module and place the R-ready package in R/gsalib .
git-svn-id: file:///humgen/gsa-scr1/gsa-engineering/svn_contents/trunk@4416 348d0f76-0448-11de-a6fe-93d51630548a
2010-10-04 08:27:59 +08:00
|
|
|
|
|
|
|
|
print(cmdargs$file); # will print '[1] "/my/test.vcf"'
|
|
|
|
|
}
|
|
|
|
|
\keyword{ ~kwd1 }
|