Learn R Programming

r2lh (version 0.6.1)

r2lb: ~ Function: R to LaTeX, Bivariate analysis ~

Description

r2latexBiv (r2lb in short) performs some bivariate analyses, then generates code to be included in a LaTeX document in order to print out the analyses in a (so nice!) LaTeX way.

Usage

r2lb(formula,fileOut="",textBefore="",textAfter="",graphDir="graphBiv",graphName="V",type="png",displayStyle=7,limDiscreteY=10,limDiscreteX=10)
  r2latexBiv(formula,fileOut="",textBefore="",textAfter="",graphDir="graphBiv",graphName="V",type="png",displayStyle=7,limDiscreteY=10,limDiscreteX=10)

Arguments

formula
[variable~variable] or [variable~data.frame] : contains the data to analyse. In all the following, the left part will be called Y, the right part will be X.
fileOut
[character] name of the output file in which the LaTeX summary will be saved. If empty, the LaTeX code is printed on screen.
textBefore
[character] or [vector(character)] : before printing a variable analysis, r2lb can write a text. If X is a single variable, textBefore should be of length 1. If X is a d
textAfter
[character] or [vector(character)] : same as textBefore but the text is printed after the variable analysis. See textBefore and examples for details.
graphDir
[character] : directory used to save the graphs generated by the analyses.
graphName
[character] or [vector(character)] : prefix for the graph names. If empty, the graph names are V1 to V'length(data.frame)'
type
[character] : type of plotting device used to export the graphics. Can be Windows metafile, PNG, JPEG, BMP (Windows bitmap format), TIFF, PostScript or PDF.
displayStyle
[numeric] or [vector(numeric)] : r2lb proposes two different ways of displaying the results. The first one is compact, it displays all the results on two lines. If the number of modalities of X
limDiscreteY
[numeric] : r2lb distinguishes two kinds of numeric variables: discrete designates numeric with only a few modalities, continuous designates numeric
limDiscreteX
[numeric] or [vector(numeric)]: same as limDiscreteY. If X is a data.frame, limDiscreteX can have the same length as X or can be of length 1 (and is recyc

Value

  • r2lb generates LaTeX code and either prints it on the screen, or saves it in a file. It also generates several graphs, optionally in a different directory.

Classical usage

The use of r2lb goes through the following steps: ll{ Step 1. Load the data (usually, a data.frame). Step 2. Optionally, set some variables as ordered. Step 3. Run r2lb(Y~dataFrame,"fileOut.tex"). } See examples of application.

Author

Christophe Genolini christophe.genolini@free.fr PSIGIAM: Paris Sud Innovation Group in Adolescent Mental Health INSERM U669 / Maison de Solenn / Paris Bernard Desgraupes bernard.desgraupes@u-paris10.fr University of Paris Ouest - Nanterre

Details

r2lb performs some basic analyses, then generates code to be included in a LaTeX document in order to print out the analyses in a (so nice!) LaTeX way. r2lb performs the analyses automatically according to the data class. It considers 5 classes: nominal with 2 modalities, nominal with 3 modalities or more, ordered, discrete and continuous (see the description of limDiscreteY for details on discrete and continuous). The analysis of the variable depends on the class of Y and X wich gives 25 possible combinations. We will not give a description here, all of them are presented in the pdf file /library/r2lh/doc/r2lhOutput.pdf. They can be divided in two categories. First (on the top of the tabular) are descriptive analyses:
  1. table: absolute and relative frequency.
  2. summary: mainly whenYis continuous andXhas few modalities.
  3. graphical representation: barplot or boxplot for each modalities ofX, mosaic plot, scatter plot, density lines according to the type of the variable.
On the second part of the tabular are all the informations related to a potential link between Y and X.
  1. test: khi2, Fisher exact test, Student's T, ANOVA, Wilcoxon, Kruskal & Wallis, Spearman correlation, Pearson correlation, Odds Ratio and Relative Risk, depending on the classes ofYandX. Note that as many tests as possible are run. For example, ifYis nominal andXis ordered,Xcan be considered as a factor (khi2 and Fisher exact test) but also as a discrete variable (Wilcoxon).
  2. graphical diagnostic: the test presented might not be all valid. Some graphical diagnostic (check for normality) are presented to let the user decide which test is more relevant.
The wide display gives : +---+---+---+ | 1 | 2 | 3 | +---+-+-+---+ | 4 | 5 | +-----+-----+ The long display : +-------+ | 1 | +---+---+ | 2 | 3 | +---+---+ | 4 | 5 | +---+---+ If X is a data.frame, r2lb runs the analyses on every column. See /library/r2lh/doc/r2lhOutput.pdf for display details.

References

LaTeX web site http://www.latex-project.org/ Data are available on line: http://christophe.genolini.free.fr/EPO/EPO2007-Fraude.php

See Also

r2lMainFile, r2lu, r2latexUniv-package, examCheating, Sweave, latex

Examples

Run this code
# # # # # # # # # # # # # # # # # # #
#    R to LaTeX, Bivariate Analyses   #
 #        Artificial examples        #
  #         Single variable         #
   # # # # # # # # # # # # # # # # #

### Create some data
V1 <- factor(LETTERS[floor(runif(50,1,4))])
V2 <- rnorm(50,1,1)<0
V3 <- ordered(LETTERS[floor(runif(50,1,4))])

### Create a directory for the output
if(!file.exists("tmp/r2lbExample",recursive=TRUE)){dir.create("tmp/r2lbExample",recursive=TRUE)}else{}
setwd("tmp/r2lbExample")

### Execute r2lb
r2lb(V1~V2,fileOut="first.tex",textBefore="\\section{Variables V1, V2, V3}",graphName="Gr1",type="postscript")
r2lb(V2~V1,fileOut="second.tex",graphName="Gr2",type="postscript")
r2lb(V3~V1,fileOut="third.tex",textBefore="This is V3 vs. V1",graphDir="P",graphName="Gr3",type="postscript",displayStyle=2)
r2lMainFile(text="\\input{first.tex}
\\input{second.tex}
\\input{third.tex}")
setwd("../..")

Run the code above in your browser using DataLab