2013-05-26 13 views
5

Używam pakietu ctab() z pakietu catspec do wygenerowania stołu trójstronnego. Ale czy istnieje sposób na sformatowanie wyjściowego materiału lateksowego? Wydaje się, że to bardzo prosta sprawa:Konwersja wielowymiarowej tabeli ctab() do formatu LaTeX

library(catspec) 
ctab(Titanic) 

        Survived No Yes 
Class Sex Age     
1st Male Child   0 5 
      Adult   118 57 
     Female Child   0 1 
      Adult   4 140 
2nd Male Child   0 11 
      Adult   154 14 
     Female Child   0 13 
      Adult   13 80 
3rd Male Child   35 13 
      Adult   387 75 
     Female Child   17 14 
      Adult   89 76 
Crew Male Child   0 0 
      Adult   670 192 
     Female Child   0 0 
      Adult   3 20 

Ale co wtedy?

+1

Sieć [tabele] (http://cran.r-project.org/web/packages/tables/index.html) pakiet robi tego rodzaju formatowanie, jak sądzę, ale specjalna składnia, aby się tam dostać, może być barierą. – baptiste

+1

jest też [wygodna funkcja] (http://www.r-statistics.com/2012/01/printing-nested-tables-in-r-bridging-between-the-reshape-and-tables-packages/) przetłumaczyć z przekształcenia na tabelę. – baptiste

+0

Nie widzę powodu, dla którego nie jest to temat. - Widziałeś [tę odpowiedź] (http://stackoverflow.com/a/6892758/946850)? – krlmlr

Odpowiedz

0

Dzięki baptiste dla pointer do tables package. Rzuć okiem na bardzo szczegółowe tables vignette z mnóstwem ładnych przykładów i systematycznym wyjaśnieniem terminów. A oto jak to uczyni swoją przykładową pracę (bez użycia ctab(), choć):

df <- as.data.frame.table(Titanic) 

require('tables') 
latex(tabular(RowFactor(Class, spacing=1) * RowFactor(Sex, spacing=1) * Factor(Age) ~ Freq * Heading() * identity * Survived, data = df)) 

Prawdą jest, że coraz głowę jak te prace wzory trwa chwilę (i kilka prób i błędów ...) , ale przykłady z winiety bardzo pomagają, a pakiet jest cholernie elastycznym narzędziem!

Więcej informacji na temat generowania tabel lateksowych w R warunkiem jest tutaj: Tools for making latex tables in R

+1

Nie. Całkowicie cichy na ctab(). – user702432

+0

Cóż, sądzę, że będziesz musiał znaleźć sposób, aby zadziałał z jednym z pakietów. Na przykład. spójrz na pakiet 'xtable', zapewnia interfejs do tworzenia tabel latexowych z formatów wydrukowanych przez' methods (xtable). 'Aby ponownie sformatować dane, może pomóc pakiet' reshape2'. – thunk

+1

xtable obsługuje 2 wymiary max. – user702432

Powiązane problemy