2017-10-20 23 views
2

私はRmarkdownを使用して頻度テーブルのPDFを作成しています。 freqquestionrから実行し、group_rowsで行グループを追加した後に複素数頻度テーブルを作成すると、最初のグループの最後の行に配置問題が発生します。ここでの再現性の例:group_rowsを使用したkableExtraとの列の整列

--- 
output: 
    pdf_document: 
     latex_engine: xelatex 
     fig_caption: true 
--- 
```{r} 
library(haven) 
library(questionr) 
library(dplyr) 
library(magrittr) 
library(knitr) 
library(kableExtra) 

# Build some data 
x <- rep(c(1,0),times=50) 
y <- c(rep(1,times=25),rep(0,times=75)) 
z <- c(rep(1,times=75),rep(0,times=25)) 

# Function to run frequencies on several variables at a time 
MassFreq <- function(...){ 
    step1 <- list(...) # Wrap items into a list 
    step2 <- lapply(step1,freq,total=TRUE) # run frequencies on all items 
    step3 <- bind_rows(step2) # collapse list results into single df 
    Response <- unlist(lapply(step2,row.names),recursive=FALSE) # Get row names from frequencies 
    step4 <- cbind(Response,step3) #Stick row names at front of the dataframe 
} 

# Run function - returns a data frame object 
test <- MassFreq(x,y,z) 

# Build table 
test %>% 
    kable(format="latex", booktabs = TRUE, row.names=FALSE) %>% 
    group_rows("Group 1",1,3) %>% 
    group_rows("Group 2",4,6) %>% 
    group_rows("Group 3",7,9) 
``` 

この編み時に私に与えます:

Frequency Table

最初の「合計」のテキストは右揃えですが、他のすべての罰金です。 kable行にalign=('lrrr')を追加すると何も起こりません。align=('crrr')は混乱の種です。 group_rowsのインデックスメソッドを使用すると同じ結果が得られます。 group_rowsコマンドを省略すると、最初の列のすべてが左揃えで表示されます。 「questionr::freq」を実行すると「合計」行が作成されるため、kableExtraquestionrで正常に再生されません。

答えて

1

これは、現在のCRANバージョンのkableExtraのバグで、0.5.2です。これはdev版で修正されています。私は来週CRANの発表をします。

関連する問題