R-tools: Difference between revisions

From Opasnet
Jump to navigation Jump to search
mNo edit summary
Line 64: Line 64:
name:b|type:date|default:2009-11-30|
name:b|type:date|default:2009-11-30|
name:c|description:Fruit|type:selection|options:'banana';Banana;'orange';Orange;'kiwi';Kiwi|default:'kiwi'|
name:c|description:Fruit|type:selection|options:'banana';Banana;'orange';Orange;'kiwi';Kiwi|default:'kiwi'|
name:d|description:Cars|type:checkbox|options:1;Ferrari;2;Porsche;3;Lamborghini|default:1;3|
name:d|description:Cars|type:checkbox|options:1;Ferrari;2;Porsche;3;Lamborghini|default:1;3
">
">
# Print out the variable values
a
a
b
b
Line 71: Line 72:
d
d
</rcode>
</rcode>


==Rationale==
==Rationale==

Revision as of 12:36, 27 June 2011



R-Tools is a MediaWiki extension that allows registered Opasnet users to run R code directly from a wiki page.

Question

How should R-based modelling be performed in a MediaWiki environment?

Answer

Libraries

Opasnet R software has some additional libraries installed for plotting (e.g. ggplot2) and also some libraries that enable connecting to external databases (e.g. OpasnetBaseUtils). More libraries can be installed on request with proper reasons.

Usage

R-tools uses <rcode> tags. Any R code written between these tags can be run from wiki page using the "Run code"-button. Press the button and new window (or tab) opens up showing the status and the results of the run in real time. An example code that counts one plus one using R:

<rcode>
1+1
</rcode>

Parameters

Some optional parameters can be given to <rcode> tag as described below.

  • graphics - If the code is meant to draw any graphs then define graphics to '1'.
  • variables - Allows user to input values for named variables in R code. Inputs will be displayed in a box below the actual R code in wiki page. Variables syntax is described in its own chapter on this page.

Variables syntax (legacy way)

Each variable needs three attributes separated with | (pipe) character. These attributes (in correct order) are variable name in code,variable description in wiki page and default value. Variable triplets must also be separated with pipe. An example R code with two defined attributes calculates the area of a rectangle:

<rcode variables="width|Width of the rect|10|height|Height of the rect|10">
# The area of the rect is
width *  height
</rcode>

Note that variable default value can also be a string or even an array (e.g. c(1,2,3) or 'Some name').

Variables syntax (new way with more possibilities)

Each variable can have a set of attributes. Attributes must be given as name/value pairs, separated with colon (:). Each variable must have at least one attribute, which is called "name" (variable name in R code). Optionally "description" attribute can be defined to give users more information about the variable, and "default" can be used for giving variable some predefined input. Order in which the attributes are given is not relevant. All variables are considered as text type by default, providing users a input field for writing. There are other possible types too (date, select, checkbox...) and the list of possibilities may grow longer in future. Each type of a variable have custom set of attributes. Variable type can be defined by giving it "type" attribute. Different types for variables are described in their own chapter on this page. Each attribute must be separated with a vertical bar (aka pipe) character. Example code of two variables with default values:

<rcode variables="name:width|default:10|name:height|description:Rect height|default:10">
# The area of the rect is
width *  height
</rcode>

Variable types

This chapter describes all the implemented variable types.

text

This is the default type if "type" attribute is not present. Renders a text field where users can input any text. Given input will be assigned to R variable as is, making it possible to use this type for inputting strings, numbers, vectors etc. Optionally "default" attribute can be given to insert predefined value to text field.

date

Renders three select-elements for choosing a day, month and year. Given date will be assigned to R variable as date (as.Date). Optionally "default" attribute can be used for setting default date. Default date must be given in ISO 8601 format (YYYY-MM-DD).

select

Renders a drop down element with options defined by "options" attribute. Options must be given as value/name pairs separated with semicolon ('value1';Name one;'value2';Name two...). Selected value will be assigned into R variable. NOTE: values can be strings, numbers or even vectors. Default selection can be defined with "default" attribute.

checkbox

Renders a group of checkbox elements defined by "options" attribute. Options must be given as value/name pairs separated with semicolon ('value1';Name one;'value2';Name two...). Selected values will be assigned into R variable as vector. NOTE: values can be strings, numbers or even vectors. Default selections can be defined with "default" attribute (separate multiple values with semicolon).

Example code

a:

b:
..

Fruit:

Cars:
Ferrari
Porsche
Lamborghini

+ Show code

Rationale

See also

Keywords

References


Related files

<mfanonymousfilelist></mfanonymousfilelist>