Question

Je ne sais pas s'il s'agit d'une question R ou d'une question d'éweave. Je regarde les marques des élèves de 2 points dans le temps dans un tableau simple (3e et 6e année). J'ai créé le tableau et il imprime, mais je veux ajouter des étiquettes pour que les gens sachent quelle marque est à partir de quelle note.

Mon code de sweave est:

<<MakeData,results='asis'>>=
library(xtable)
Grade3 <- c("A","B","B","A","B","C","C","D","A","B","C","C","C","D","B","B","D","C","C","D")
Grade6 <- c("A","A","A","B","B","B","B","B","C","C","A","C","C","C","D","D","D","D","D","D")
Cohort <- table(Grade3,Grade6)
print(xtable(Cohort))
@

Je reçois une belle table avec des comptes, mais les lignes et les colonnes ont la même notation. Comment ajouter une étiquette pour le rendre plus clair?

Était-ce utile?

La solution

Pour changer les étiquettes pour Cohort, Changez la colonne et les noms Rown:

rownames(Cohort) <- 1:4
colnames(Cohort) <- 5:8

Vous ajoutez également des titres de table au xtable appel:

print(xtable(Cohort, caption = 'My Title'), caption.placement = 'top')

Vous pouvez utiliser caption.placement pour dire où mettre la légende.

ÉDITER:

Sur la base des commentaires, je n'ai pas répondu à la question ci-dessus. Faire xtable Imprimer plus comme table Avec les étiquettes au-dessus des niveaux, vous utilisez add.to.row dans le print.xtable fonction:

addtorow <- list()
addtorow$pos <- list()
addtorow$pos[[1]] <- 0
addtorow$pos[[2]] <- 0
addtorow$command <- c('& & Grade 6 & & \\\\\n', "Grade 3 & A & B & C & D \\\\\n")
print(xtable(Cohort, caption = 'My Title'), caption.placement = 'top', 
      add.to.row = addtorow, include.colnames = FALSE)

add.to.row Prend une liste avec deux éléments: pos et command. pos est une liste dont la longueur est la même que command qui est un vecteur. Chaque élément de pos est la ligne dans le tableau où vous placez l'élément correspondant de command.

Ici, je veux que les deux premières lignes soient là où les étiquettes vont. J'ai réglé les premier et deuxième éléments de pos à 0 pour indiquer que je mets des choses en haut de la table. La position 0 est celle entre les deux règles horizontales du tableau.

La \\\\\n Produisez le '' dans le code de latex qui est utilisé à la fin de chaque ligne d'une table plus un caractère Newline.

L'aide pour xtable a un bon exemple de add.to.row pour plus d'informations.

Licencié sous: CC-BY-SA avec attribution
Non affilié à StackOverflow
scroll top