[英]How to repeat column headers in GT and/or Data.Table in R
所以要使用這個站點作為數據源( https://rstudio.github.io/DT/extensions.html )。 mtcars 是嵌入在 R 中的數據源。 以下是該鏈接中的代碼,更具體地說是項目編號 9 或行組。 我的問題是:我將如何擁有這些專欄; mpg、cyl、disp 等重復並顯示在每個輪廓的頂部。 例如,我希望列標題 (mpg,cyl,disp) 再次出現,但在這種情況下,它將與 6 在同一行中。
library(DT)
mtcars2 = mtcars[1:20, ]
datatable(
mtcars2[order(mtcars2$cyl), ],
extensions = 'RowGroup',
options = list(rowGroup = list(dataSrc = 2)),
selection = 'none'
)
期望的結果看起來像這樣。
6 mpg cyl disp
Mazda RX4 21 6 160
DataTables 允許您使用rowGroup.startRender
選項自定義該摘要(分組)行的內容。
翻譯成R和DT,看起來是這樣的:
library(DT)
mtcars2 = mtcars[1:20, ]
datatable(
mtcars2[order(mtcars2$cyl), ],
extensions = 'RowGroup',
options = list(
rowGroup = list(
dataSrc = 2,
startRender = JS(
"
function ( rows, group ) {
return $('<tr/>')
.append( '<td>' + rows.toArray()[0].length + '</td>' )
.append( '<td>mpg</td>' )
.append( '<td>cyl</td>' )
.append( '<td>disp</td>' )
.append( '<td>hp</td>' )
.append( '<td>drat</td>' )
.append( '<td>wt</td>' )
.append( '<td>qsec</td>' )
.append( '<td>vs</td>' )
.append( '<td>am</td>' )
.append( '<td>gear</td>' )
.append( '<td>carb</td>' );
}"
),
endRender = NULL
)
),
selection = 'none'
)
它的工作原理是構建一個<tr>
行,其中包含您想要查看的硬編碼標題(以及第一個單元格的摘要行數)。
最終結果:
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.