Hi

I have not been following the thread and please excuse the length and width of this - this is a large example of what you can do using xtable and a data.frame

the data.frame is copied to xx in the chunck Table6H and reworked in the table itself resulting in a good presentation in a pdf. It just happens to be a \sidewaystable because of size you need \usepackage{booktabs} in the preliminary. I put a space between the lines in the header. A similar thing would apply to \longtable

\begin{sidewaystable}[h]
\caption[Ewe numbers drenched by dcode and date by Farm]%
{Ewe numbers drenched by code and date by Farm}%
\label{tab:GPS6}%
\pdfbookmark[3]{Table:~6 Ewe numbers drenched by code and date by Farm}%
{tab:6}\label{tab:6}%
\centering
\begin{small}
\begin{tabular}{l *{24}{D{.}{.}{3.0}} }
\toprule
\addlinespace[3pt]
% Header
& \multicolumn{24}{c}{Drench Code}\\
\addlinespace[2pt]
\cmidrule(lr){2-25}
\addlinespace[2pt]
% Table6H
<<head1, echo=FALSE, results=tex>>=

  xx <- pparasiteE.tfNw
  for (j in 2:dim(xx)[2]) xx[xx[,j]==0,j] <- NA
  xx[,1] <- as.character(xx[,1])
  # datasets
xx[,1] <- paste(xx[,1], apply(pparasiteE.ds,1,function(x) paste(ifelse(x[2] > 0,"*","\\;\\;"),ifelse(x[1] > 0,"*","\\;\\;"), sep = "") ))

  out <- unique(sub("[^01]+", "", names(xx)[-1]) )
  out <-
  c("\\multicolumn{1}{c}{Drench} & %\n",
    paste("\\multicolumn{3}{c}{",
          out,
          rep(c("} & %\n", "} \\\\"), c(length(out)-1, 1)), sep = ""), "\n"
  )

  cat(out,"\n", sep = "")
  rm(out)

  out <- rep(Farms, (dim(xx)[2]-1)/3)
  out <-
c("\\addlinespace[2pt]\n\\cmidrule(lr){2-4}\n\\cmidrule(lr){5-7}\n\\cmidrule(lr){8-10}\n\\cmidrule(lr){11-13}\n\\cmidrule(lr){14-16}\n\\cmidrule(lr){17-19}\n\\cmidrule(lr){20-22}\n\\cmidrule(lr){23-25}\n\n\\addlinespace[2pt]\n\n\\multicolumn{1}{c}{Date} & %\n", paste("\\multicolumn{1}{c}{", out, rep(c("} & %\n", "} \\\\"), c(length(out)-1, 1)), sep = ""), "\n"
  )

  cat(out, sep = "")
  rm(out)

@ %% 6 end
\addlinespace[3pt]
\midrule
\addlinespace[5pt]
%Table6
<<Table6, keep.source=FALSE, results=tex, echo=FALSE>>=

  print(
  xtable(xx ,
         digits  = rep(c(0), dim(xx)[2]+1),
         ),
         type    = "latex",
         tabular.environment = "tabular",
         include.rownames = FALSE,
         include.colnames = FALSE,
         only.contents = TRUE,
         NA.string = "\\multicolumn{1}{c}{$\\;\\cdots\\;$}",
         sanitize.text.function = function(x){x},
         hline.after = NULL
  ) ## xtable

@ % Table6 end
\addlinespace[5pt]
\bottomrule
\end{tabular}
\end{small}
\end{sidewaystable}
\setlength\tabcolsep{7pt}

HTH

Duncan

Duncan Mackay
Department of Agronomy and Soil Science
The University of New England
Armidale NSW 2351
Email : home: mac...@northnet.com.au


At 06:59 24/03/2012, you wrote:
You can use xtable() or latex() and then edit the columns names in the
generated .tex file.  That is a much better plan than reinventing either of
those functions.

On Thu, Mar 22, 2012 at 3:46 AM, Manish Gupta <mandecent.gu...@gmail.com>wrote:

> Hi,
>
> I am working on table suing R and Latex.  I am writing .Rnw file first in
> which i m reading input file and storing into dataframe. After filtering
> certain values from this dataframe. I am planning to display it. I don't
> want to use xtable since i need to change column names.
>
> *Sample .Rnw file*
>
> @
> <<echo=FALSE>>=
> cat("\begin{table}[ht]")
> cat("\begin{center}")
> cat("\begin{tabular}{lrrrrr}")
> cat  ("\hline")
> cat ("& Df & Sum Sq & Mean Sq & F value & Pr($>$F) \\")
> cat  ("\hline")
> cat("block       & 5 & 343.29 & 68.66 & 4.45 & 0.0159 \\")
> cat  ("N           & 1 & 189.28 & 189.28 & 12.26 & 0.0044 \\")
> cat  ("P           & 1 & 8.40 & 8.40 & 0.54 & 0.4749 \\")
> cat  ("K           & 1 & 95.20 & 95.20 & 6.17 & 0.0288 \\")
> cat  ("N:P         & 1 & 21.28 & 21.28 & 1.38 & 0.2632 \\")
> cat  ("N:K         & 1 & 33.13 & 33.13 & 2.15 & 0.1686 \\")
> cat  ("P:K         & 1 & 0.48 & 0.48 & 0.03 & 0.8628 \\")
> cat  ("Residuals   & 12 & 185.29 & 15.44 &  &  \\")
> cat   ("\hline")
> cat("\end{tabular}")
> cat("\end{center}")
> cat("\end{table}")
> @
>
> But i am getting error  cat("\" not supported.  In my case tabular values
> are variable. How can i fix my pblm?
>
> Regards
>
> --
> View this message in context:
> http://r.789695.n4.nabble.com/How-to-draw-table-in-Latex-without-using-xtable-tp4494781p4494781.html
> Sent from the R help mailing list archive at Nabble.com.
>        [[alternative HTML version deleted]]
>
> ______________________________________________
> R-help@r-project.org mailing list
> https://stat.ethz.ch/mailman/listinfo/r-help
> PLEASE do read the posting guide
> http://www.R-project.org/posting-guide.html
> and provide commented, minimal, self-contained, reproducible code.
>

        [[alternative HTML version deleted]]

______________________________________________
R-help@r-project.org mailing list
https://stat.ethz.ch/mailman/listinfo/r-help
PLEASE do read the posting guide http://www.R-project.org/posting-guide.html
and provide commented, minimal, self-contained, reproducible code.

______________________________________________
R-help@r-project.org mailing list
https://stat.ethz.ch/mailman/listinfo/r-help
PLEASE do read the posting guide http://www.R-project.org/posting-guide.html
and provide commented, minimal, self-contained, reproducible code.

Reply via email to