Browse Source

charger.R : na.strings="" dans read.csv2 (alternative pour read.xlsx ?)

oubli d'un encoding=iso8859-1 dans la lecture de labels.sas
Re-séparation des fichiers CSS à cause de collisions de styles (wtf?), et  ajout du paramètre CSSfile dans HTMLInit()
Correction du charset auto dans HTMLInit()

TODO : gestion douce des erreurs lors de l'utilisation des tests statistiques -> warnings et toujours produire un fichier html
master
Maxime Wack 10 years ago
parent
commit
73b05e43c9
17 changed files with 165 additions and 155 deletions
  1. +6
    -0
      DESCRIPTION
  2. +3
    -3
      NAMESPACE
  3. +2
    -2
      R/charger.R
  4. +4
    -4
      R/desc_global.R
  5. +1
    -1
      R/desc_groupe.R
  6. +6
    -4
      R/html.R
  7. +1
    -1
      SEEC_Nancy.Rproj
  8. +3
    -65
      data/desc.css
  9. +66
    -0
      data/diag.css
  10. +4
    -4
      man/HTML.Rd
  11. +4
    -4
      man/HTMLEnd.Rd
  12. +6
    -8
      man/HTMLInit.Rd
  13. +11
    -10
      man/charger.Rd
  14. +11
    -10
      man/desc_global.Rd
  15. +12
    -14
      man/desc_groupe.Rd
  16. +14
    -14
      man/diagnostic.Rd
  17. +11
    -11
      man/label.Rd

+ 6
- 0
DESCRIPTION View File

@@ -9,3 +9,9 @@ Depends:
xlsx
Description:
License: GPLv3
Collate:
'charger.R'
'desc_global.R'
'desc_groupe.R'
'html.R'
'label.R'

+ 3
- 3
NAMESPACE View File

@@ -1,7 +1,6 @@
S3method("label<-",data.frame)
S3method("label<-",default)
S3method(label,default)
export("label<-")
export("label<-.data.frame")
export("label<-.default")
export(HTML)
export(HTMLEnd)
export(HTMLInit)
@@ -10,3 +9,4 @@ export(desc_global)
export(desc_groupe)
export(diagnostic)
export(label)
export(label.default)

+ 2
- 2
R/charger.R View File

@@ -32,7 +32,7 @@ charger <- function(fichier,nom=NULL,feuille=1)
# Lecture du fichier selon l'extension
if (grepl("\\.csv$",fichier) || grepl("\\.txt$",fichier))
x<-read.csv2(fichier)
x<-read.csv2(fichier, na.strings="")
else if (grepl("\\.xlsx?$",fichier))
x<-read.xlsx(fichier,feuille)
@@ -96,7 +96,7 @@ charger <- function(fichier,nom=NULL,feuille=1)
# Lecture des labels a partir du fichier SAS
if (file.exists("labels.sas"))
{
con=file("labels.sas","r",encoding="ISO-8859-1")
con=file("labels.sas","r")
labelsfile=readLines(con)
close(con)
labels=labelsfile[grepl('^ *\\w*? *= *\\".*?\\" *$',labelsfile)]


+ 4
- 4
R/desc_global.R View File

@@ -48,7 +48,7 @@ desc_global <- function(html="desc_global", titre=NULL, table=NULL, variables=NU
}
# Header de la table
HTMLInit(file=paste0("../HTML\ Output/",html,".html"), title=titre)
HTMLInit(file=paste0("../HTML\ Output/",html,".html"), title=titre, CSSfile="desc.css")
HTML("<div class='desc'>")
inc()
HTML("<table class='desc'>")
@@ -176,8 +176,8 @@ desc_global <- function(html="desc_global", titre=NULL, table=NULL, variables=NU
#'
#' Permet de produire un tableau descriptif des variables contenues dans la table courante.
#' Si les labels et formats sont definis et charges ils seront utilises pour peupler le tableau.
#' La fonction attribue un paramètre "param" à chaque variable à partir de tests de normalité, ce paramètre est modifiable ensuite, il conditionne l'utilisation des tests statistiques dans la fonction comparer().
#' Tous les parametres ont une valeur par defaut, il est donc possible de simplement lancer diag() pour obtenir le diagnostic par defaut.
#' La fonction attribue un parametre "param" a chaque variable a partir de tests de normalite, ce parametre est modifiable ensuite, il conditionne l'utilisation des tests statistiques dans la fonction comparer().
#' Tous les parametres ont une valeur par defaut, il est donc possible de simplement lancer diagnostic() pour obtenir le diagnostic par defaut.
#' @encoding UTF-8
#' @param table Table a utiliser, par defaut la derniere chargee
#' @export
@@ -185,7 +185,7 @@ diagnostic <- function(table=NULL)
{
if (is.null(table)) table<-eval(parse(text=.attachd))
HTMLInit()
HTMLInit(CSSfile="diag.css")
assign(".param", character(), pos=1)
HTML("<div class='diag_menu'>")


+ 1
- 1
R/desc_groupe.R View File

@@ -63,7 +63,7 @@ desc_groupe <- function(groupe=NULL, html=NULL, titre=NULL, table=NULL, variable
html <- paste0("desc_groupe_",groupe)
# Header de la table
HTMLInit(file=paste0("../HTML\ Output/",html,".html"), title=titre)
HTMLInit(file=paste0("../HTML\ Output/",html,".html"), title=titre, CSSfile="desc.css")
HTML("<div class='desc'>")
inc()
HTML("<table class='desc'>")


+ 6
- 4
R/html.R View File

@@ -7,10 +7,12 @@
#' @encoding UTF-8
#' @param file Nom du fichier HTML à creer, par defaut un fichier temporaire
#' @param title Titre de la page
#' @param CSSfile Fichier CSS à utiliser
#' @export
HTMLInit <- function(file=tempfile(pattern="report", fileext=".html"), title="")
HTMLInit <- function(file=tempfile(pattern="report", fileext=".html"), title="", CSSfile="")
{
file.copy(from=file.path(path.package("cosmosR"),"data","cosmosR.css"), to=file.path(dirname(file),"cosmosR.css"),overwrite=T)
file.copy(from=file.path(path.package("cosmosR"),"data","desc.css"), to=file.path(dirname(file),"desc.css"),overwrite=T)
file.copy(from=file.path(path.package("cosmosR"),"data","diag.css"), to=file.path(dirname(file),"diag.css"),overwrite=T)
file.copy(from=file.path(path.package("cosmosR"),"data","cosmosR.js"), to=file.path(dirname(file),"cosmosR.js"),overwrite=T)
assign(".HTML.file", file, pos=1)
assign(".tabs", 0, pos=1)
@@ -21,9 +23,9 @@ HTMLInit <- function(file=tempfile(pattern="report", fileext=".html"), title="")
inc()
HTML("<HEAD>")
inc()
HTML("<meta charset='", localeToCharset(), "' />")
HTML("<meta charset='", localeToCharset()[1], "' />")
HTML("<title>", title, "</title>")
HTML("<link rel='stylesheet' href='cosmosR.css' />")
HTML("<link rel='stylesheet' href='", CSSfile, "' />")
HTML("<script src='cosmosR.js'></script>")
dec()
HTML("</HEAD>")


+ 1
- 1
SEEC_Nancy.Rproj View File

@@ -7,7 +7,7 @@ AlwaysSaveHistory: Default
EnableCodeIndexing: Yes
UseSpacesForTab: Yes
NumSpacesForTab: 2
Encoding: ISO8859-1
Encoding: UTF-8

RnwWeave: Sweave
LaTeX: pdfLaTeX


data/cosmosR.css → data/desc.css View File

@@ -8,7 +8,7 @@ div.desc
background-color: white;
border-radius: 10px;
box-shadow: 2px 4px 5px grey inset;
margin: 20px auto;
margin: 20px 10px;
padding: 10px;
display: inline-block;
overflow: hidden;
@@ -31,7 +31,7 @@ table.desc caption

table.desc thead, th
{
padding: 0 1em;
padding: 0 3em;
border-bottom: 1px solid black;
height: 2em;
font-weight: normal;
@@ -61,69 +61,7 @@ table.desc tbody td.level
}

table.desc tbody td
{
padding-top: 1em;
text-align: right;
}

div.diag_menu
{
background-color: white;
border-radius: 10px;
box-shadow: 2px 4px 5px grey inset;
margin: 10px 10px;
width: 15%;
padding: 10px;
display: inline-block;
vertical-align: top;
overflow: hidden;
resize: both;
}

div.diag_menu p
{
margin: 0px;
font-weight: bold;
}

div.diag_menu p:hover
{
background-color: grey;
}

table.diag{
text-align: center;
padding: 5px 0;
}

table.diag td, th
{
padding: 3px;
}

div.diag_varblock
{
background-color: white;
border-radius: 10px;
box-shadow: 2px 4px 5px grey inset;
margin: 10px 10px;
padding: 10px;
font-weight: bold;
font-size: 1.2em;
display: inline-block;
vertical-align: top;
overflow: hidden;
position: fixed;
}

div.diag_varstat
{
margin: 20px;
font-weight: normal;
font-size: 1rem;
}

div.diag_varplot
{
text-align: center;
vertical-align: bottom;
}

+ 66
- 0
data/diag.css View File

@@ -0,0 +1,66 @@
body
{
background-color: lightgrey;
}

div.diag_menu
{
background-color: white;
border-radius: 10px;
box-shadow: 2px 4px 5px grey inset;
margin: 10px 10px;
width: 15%;
padding: 10px;
display: inline-block;
vertical-align: top;
overflow: hidden;
resize: both;
}

div.diag_menu p
{
margin: 0px;
font-weight: bold;
}

div.diag_menu p:hover
{
background-color: grey;
}

table.diag{
text-align: center;
padding: 5px 0;
}

table.diag td, th
{
padding: 3px;
}

div.diag_varblock
{
background-color: white;
border-radius: 10px;
box-shadow: 2px 4px 5px grey inset;
margin: 10px 10px;
padding: 10px;
font-weight: bold;
font-size: 1.2em;
display: inline-block;
vertical-align: top;
overflow: hidden;
position: fixed;
}

div.diag_varstat
{
margin: 20px;
font-weight: normal;
font-size: 1rem;
}

div.diag_varplot
{
text-align: center;
}

+ 4
- 4
man/HTML.Rd View File

@@ -3,13 +3,13 @@
\alias{HTML}
\title{Ecrit dans le fichier HTML}
\usage{
HTML(x, ..., append = T, sep = "\\n")
HTML(x, ..., append = T, sep = "\n")
}
\description{
Ecrit dans le fichier HTML cree par HTMLInit
Ecrit dans le fichier HTML cree par HTMLInit
}
\details{
Ecrit dans le fichier initialise par HTMLInit dont le nom
est contenu dans .HTML.file
Ecrit dans le fichier initialise par HTMLInit dont le nom
est contenu dans .HTML.file
}


+ 4
- 4
man/HTMLEnd.Rd View File

@@ -3,13 +3,13 @@
\alias{HTMLEnd}
\title{Termine et clos le fichier HTML}
\usage{
HTMLEnd()
HTMLEnd()
}
\description{
Ecrit le footer du fichier hTML
Ecrit le footer du fichier hTML
}
\details{
Ecrit le footer du fichier initialise par HTMLInit, ouvre
le fichier dans le navigateur et supprime l'acces.
Ecrit le footer du fichier initialise par HTMLInit, ouvre
le fichier dans le navigateur et supprime l'acces.
}


+ 6
- 8
man/HTMLInit.Rd View File

@@ -3,20 +3,18 @@
\alias{HTMLInit}
\title{Initialiser un fichier HTML}
\usage{
HTMLInit(file = tempfile(pattern = "report", fileext = ".html"), title = "")
HTMLInit(file = tempfile(pattern = "report", fileext = ".html"),
title = "", CSSfile = "")
}
\arguments{
\item{file}{Nom du fichier HTML à creer, par defaut un
fichier temporaire}

\item{title}{Titre de la page}
}
\description{
Cree et remplit les headers pour un fichier hTML
Cree et remplit les headers pour un fichier hTML
}
\details{
Si aucun nom de fichier n'est fourni, cree un fichier
temporaire dans le repertoire temporaire Le nom du fichier
actuel est stocke dans .HTML.file
Si aucun nom de fichier n'est fourni, cree un fichier
temporaire dans le repertoire temporaire Le nom du
fichier actuel est stocke dans .HTML.file
}


+ 11
- 10
man/charger.Rd View File

@@ -3,7 +3,7 @@
\alias{charger}
\title{Charger un fichier de donnees dans l'environnement}
\usage{
charger(fichier, nom = NULL, feuille = 1)
charger(fichier, nom = NULL, feuille = 1)
}
\arguments{
\item{fichier}{Fichier de donnees a charger}
@@ -16,17 +16,18 @@ charger(fichier, nom = NULL, feuille = 1)
feuille au-dela de la premiere)}
}
\description{
Charge un fichier texte ou excel contenant les donnees
ainsi que les formats et labels
Charge un fichier texte ou excel contenant les donnees
ainsi que les formats et labels
}
\details{
La fonction charge les donnees contenues dans le fichier de
donnees et cree une table de valeurs. Si des labels/formats
sont definis ils seront appliques. Les variables pour
lesquelles un format est defini seront considerees comme
des variables qualitatives. La table de valeurs prend
automatiquement le nom du fichier (suffixe par le numero de
feuille) et est attachee a l'environnement courant.
La fonction charge les donnees contenues dans le fichier
de donnees et cree une table de valeurs. Si des
labels/formats sont definis ils seront appliques. Les
variables pour lesquelles un format est defini seront
considerees comme des variables qualitatives. La table de
valeurs prend automatiquement le nom du fichier (suffixe
par le numero de feuille) et est attachee a
l'environnement courant.
}
\examples{
charger("data.csv") #charger un fichier texte (marche aussi pour les .txt)


+ 11
- 10
man/desc_global.Rd View File

@@ -3,9 +3,10 @@
\alias{desc_global}
\title{Descriptif global de la table courante}
\usage{
desc_global(html = "desc_global", titre = NULL, table = NULL,
variables = NULL, variables_neg = NULL, stats = c("N", "\%/moy",
"ic95"), miss = TRUE, anglais = FALSE, note = NULL, nbdec = 1)
desc_global(html = "desc_global", titre = NULL,
table = NULL, variables = NULL, variables_neg = NULL,
stats = c("N", "\%/moy", "ic95"), miss = TRUE,
anglais = FALSE, note = NULL, nbdec = 1)
}
\arguments{
\item{html}{Nom du fichier html, par defaut
@@ -40,14 +41,14 @@ desc_global(html = "desc_global", titre = NULL, table = NULL,
defaut 1}
}
\description{
Produit un tableau descriptif de la table courante
Produit un tableau descriptif de la table courante
}
\details{
Permet de produire un tableau descriptif des variables
contenues dans la table courante. Si les labels et formats
sont definis et charges ils seront utilises pour peupler le
tableau. Tous les parametres ont une valeur par defaut, il
est donc possible de simplement lancer desc() pour obtenir
un tableau descriptif par defaut.
Permet de produire un tableau descriptif des variables
contenues dans la table courante. Si les labels et
formats sont definis et charges ils seront utilises pour
peupler le tableau. Tous les parametres ont une valeur
par defaut, il est donc possible de simplement lancer
desc() pour obtenir un tableau descriptif par defaut.
}


+ 12
- 14
man/desc_groupe.Rd View File

@@ -3,9 +3,9 @@
\alias{desc_groupe}
\title{Comparatif par groupe de la table courante}
\usage{
desc_groupe(groupe = NULL, html = NULL, titre = NULL, table = NULL,
variables = NULL, variables_neg = NULL, anglais = FALSE, note = NULL,
nbdec = 1)
desc_groupe(groupe = NULL, html = NULL, titre = NULL,
table = NULL, variables = NULL, variables_neg = NULL,
anglais = FALSE, note = NULL, nbdec = 1)
}
\arguments{
\item{html}{Nom du fichier html, par defaut
@@ -17,8 +17,6 @@ desc_groupe(groupe = NULL, html = NULL, titre = NULL, table = NULL,
\item{table}{Table a utiliser, par defaut la derniere
chargee}

\item{groupe}{Variable à utiliser pour la comparaison.}

\item{variables}{Vecteur de noms de variables a comparer,
par defaut toutes les variables contenues dans la table
moins celle servant de comparateur}
@@ -36,16 +34,16 @@ desc_groupe(groupe = NULL, html = NULL, titre = NULL, table = NULL,
defaut 1}
}
\description{
Produit un tableau comparatif par groupe de la table
courante
Produit un tableau comparatif par groupe de la table
courante
}
\details{
Permet de produire un tableau comparatif des variables
contenues dans la table courante selon les modalites d'une
d'entre elles. Si les labels et formats sont definis et
charges ils seront utilises pour peupler le tableau. Tous
les parametres ont une valeur par defaut, il est donc
possible de simplement lancer desc() pour obtenir un
tableau descriptif par defaut.
Permet de produire un tableau comparatif des variables
contenues dans la table courante selon les modalites
d'une d'entre elles. Si les labels et formats sont
definis et charges ils seront utilises pour peupler le
tableau. Tous les parametres ont une valeur par defaut,
il est donc possible de simplement lancer desc() pour
obtenir un tableau descriptif par defaut.
}


+ 14
- 14
man/diagnostic.Rd View File

@@ -3,27 +3,27 @@
\alias{diagnostic}
\title{Diagnostics de la table courante}
\usage{
diagnostic(table = NULL)
diagnostic(table = NULL)
}
\arguments{
\item{table}{Table a utiliser, par defaut la derniere
chargee}
}
\description{
Produit un tableau descriptif de la table courante et des
graphiques pour la verification des conditions
d'utilisation des tests satistiques
Produit un tableau descriptif de la table courante et des
graphiques pour la verification des conditions
d'utilisation des tests satistiques
}
\details{
Permet de produire un tableau descriptif des variables
contenues dans la table courante. Si les labels et formats
sont definis et charges ils seront utilises pour peupler le
tableau. La fonction attribue un paramètre "param" à
chaque variable à partir de tests de normalité, ce
paramètre est modifiable ensuite, il conditionne
l'utilisation des tests statistiques dans la fonction
comparer(). Tous les parametres ont une valeur par defaut,
il est donc possible de simplement lancer diag() pour
obtenir le diagnostic par defaut.
Permet de produire un tableau descriptif des variables
contenues dans la table courante. Si les labels et
formats sont definis et charges ils seront utilises pour
peupler le tableau. La fonction attribue un parametre
"param" a chaque variable a partir de tests de normalite,
ce parametre est modifiable ensuite, il conditionne
l'utilisation des tests statistiques dans la fonction
comparer(). Tous les parametres ont une valeur par
defaut, il est donc possible de simplement lancer
diagnostic() pour obtenir le diagnostic par defaut.
}


+ 11
- 11
man/label.Rd View File

@@ -7,15 +7,15 @@
\alias{label<-.default}
\title{Etiquetter un objet}
\usage{
label(objet)
label(objet)

\method{label}{default}(objet)
label.default(objet)

label(objet) <- value
label(objet, value) <- value

\method{label}{default}(objet) <- value
label.default(objet, value) <- value

\method{label}{data.frame}(objet) <- value
label.data.frame(objet, value) <- value
}
\arguments{
\item{objet}{L'objet a nommer}
@@ -23,16 +23,16 @@ label(objet) <- value
\item{value}{Le texte de l'etiquette}
}
\value{
Renvoie une chaine de caracteres contenant l'etiquette de
l'objet
Renvoie une chaine de caracteres contenant l'etiquette de
l'objet
}
\description{
Attribuer ou recuperer l'etiquette d'un objet
Attribuer ou recuperer l'etiquette d'un objet
}
\details{
Methode par defaut pour acceder et modifier l'etiquette
d'un objet ou d'un element d'un objet. Il est possible de
supprimer l'etiquette en passant NULL a la fonction.
Methode par defaut pour acceder et modifier l'etiquette
d'un objet ou d'un element d'un objet. Il est possible de
supprimer l'etiquette en passant NULL a la fonction.
}
\examples{
label(a) <- "Une variable"


Loading…
Cancel
Save