2016-09-02 2 views
0

私はRとLATEXに新しい(スペルは申し訳ありませんが、ここでOS上のラテックスの古典版を生成する方法はわかりません)。とにかく、ここに私の質問です。 2つの長い細かいテーブルブレークのxtable同じヘッダー

私は少し長いが、狭いテーブルを持っているので、私は2でそれらを壊し、彼らはラテックスが自動的に "のように、右半分のヘッダに0.1を追加します enter image description here

のように見えるようにしたいです右の "Industry.1"、私が欲しいのは "Industry"です。私のデータとコードは以下の通りです。

ご意見はお寄せください。

\documentclass[11]{article} 
\title{Privatization Report} 
\author{JiaGao, PhD} 
\usepackage{float} 
\usepackage{array} 
\usepackage[top = 0.5in, bottom = 0.5in, left = 1in, right = 1in]{geometry} 
\begin{document} 
\maketitle 

INDUSTRY.DATA<-read.dta13("industrycode.dta") 
DECRIB.DATA<-read.dta13("describe_V1.dta") 
indu.count<-data.frame(table(DECRIB.DATA$industrycode2)) 
indu.count<-rename(indu.count,c(Var1 = "industrycode2")) 
INDUSTRY.DATA<-merge(INDUSTRY.DATA,indu.count,by.x="industrycode2", 
        by.y = "industrycode2",all.x=TRUE) 
na.list<-which(is.na(INDUSTRY.DATA$Freq == "NA")) 
INDUSTRY.DATA$Freq<-replace(INDUSTRY.DATA$Freq, na.list,0) 
INDUSTRY.DATA$Perc<-INDUSTRY.DATA$Freq/sum(INDUSTRY.DATA$Freq) 
rm(na.list,indu.count) 

<<echo = FALSE, results = 'asis'>>= 
industryTable<-data.frame("Industry" = INDUSTRY.DATA[1:15,]$industryname, 
         "Freq" = INDUSTRY.DATA[1:15,]$Freq, 
         "Perc" = INDUSTRY.DATA[1:15,]$Perc, 
         "Industry" = INDUSTRY.DATA[16:30,]$industryname, 
         "Freq" = INDUSTRY.DATA[16:30,]$Freq, 
         "Perc" = INDUSTRY.DATA[16:30,]$Perc) 

print(xtable(industryTable,caption = "Distribution of Privatization Across Manufacturing", label = "table:industry",align = c("c","p{4.5cm}","c","c","|p{4.5cm}","c","c"),digits = c(0,0,0,2,0,0,2)),caption.placement="top", include.rownames = FALSE) 
@ 
\end{document} 
+0

をうまくいけば、私の答えは、あなたが探しているものですが、そうでない場合は、あなたがやっていることを再現できるように、あなたのデータのスニペットを提供してください。これは、 'dput(INDUSTRY.DATA)'の出力を貼り付けるか、本当に大きければ 'dput(head(INDUSTRY.DATA))'を貼り付けることで可能です。がんばろう。 –

+0

あなたのソリューションは私にとって非常にうまく機能します。私はまた、xtableやラテックスでこのようなテーブルを自動的に生成する方法はありますか? –

答えて

0

列名を繰り返すことができ、ちょうどこのように、xtableオブジェクトを作成した後やprintコマンドを呼び出す前に、それらを定義します。

tab<-xtable(data.frame(LETTERS[1:13], LETTERS[14:26])) 

tab 
#\begin{table}[ht] 
#\centering 
#\begin{tabular}{rll} 
# \hline 
# & LETTERS.1.13. & LETTERS.14.26. \\ 
# \hline 
# 1 & A & N \\ 
# 2 & B & O \\ 
# 3 & C & P \\ 
# 4 & D & Q \\ 
# 5 & E & R \\ 
# 6 & F & S \\ 
# 7 & G & T \\ 
# 8 & H & U \\ 
# 9 & I & V \\ 
# 10 & J & W \\ 
# 11 & K & X \\ 
# 12 & L & Y \\ 
# 13 & M & Z \\ 
# \hline 
#\end{tabular} 
#\end{table} 


names(tab) <- c("le","le") 

tab 
# \begin{table}[ht] 
# \centering 
# \begin{tabular}{rll} 
# \hline 
# & le & le \\ 
# \hline 
# 1 & A & N \\ 
# 2 & B & O \\ 
# 3 & C & P \\ 
# 4 & D & Q \\ 
# 5 & E & R \\ 
# 6 & F & S \\ 
# 7 & G & T \\ 
# 8 & H & U \\ 
# 9 & I & V \\ 
# 10 & J & W \\ 
# 11 & K & X \\ 
# 12 & L & Y \\ 
# 13 & M & Z \\ 
# \hline 
# \end{tabular} 
# \end{table} 
+0

それは私のために優れた作品です、ありがとう@マイケル・ダビッドソン、 –

関連する問題