Search code examples
rdataframelatexxtable

xtable in R: Cannot get rid of row numbers


I have a dataframe in R that I create like this:

estimate1 = rep(1,times=4)
standardError = rep(2, times = 4)
pvalue = runif(4, min=0, max=1)
rowNames =c('Thing1','Things2','Thing3','Thing4')
tableResults = as.data.frame(cbind(rowNames, estimate1, standardError, pvalue))

When I try to write to a text file using:

xtable(tableResults, include.rownames=FALSE) 

I get:

\begin{tabular}{rllll}
  \hline
 & rowNames & estimate1 & standardError & pvalue \\ 
  \hline
  1 & Thing1 & 1 & 2 & 0.624112528283149 \\ 
  2 & Things2 & 1 & 2 & 0.516147756483406 \\ 
  3 & Thing3 & 1 & 2 & 0.756535144057125 \\ 
  4 & Thing4 & 1 & 2 & 0.0105485401581973 \\ 
   \hline
\end{tabular}

I can't figure out how to get rid of the row numbers in the first column. I thought the "include.rownames=FALSE" would get rid of it, but that doesn't work.


Solution

  • include.rownames is an argument for the print function of xtable objects, print.xtable, not the xtable function. Use the following code instead:

    print(xtable(tableResults), include.rownames=FALSE)
    
    % latex table generated in R 3.2.3 by xtable 1.8-2 package
    % Wed Jul 06 11:56:20 2016
    \begin{table}[ht]
    \centering
    \begin{tabular}{llll}
      \hline
    rowNames & estimate1 & standardError & pvalue \\ 
      \hline
    Thing1 & 1 & 2 & 0.405261459294707 \\ 
      Things2 & 1 & 2 & 0.611535826232284 \\ 
      Thing3 & 1 & 2 & 0.482713349396363 \\ 
      Thing4 & 1 & 2 & 0.242787319235504 \\ 
       \hline
    \end{tabular}
    \end{table}