下面是一个代码示例,它将生成我在R Markdown中需要的表:
---
title: "Table"
author: "Nick"
date: "9 June 2017"
output: html_document
---
```{r setup, include=FALSE}knitr::opts_chunk$set(echo =真)
图书馆(表)
年龄<-样本(0:19,500,替换=真)
未出生<-样本(0:1,500,替换=真)
GenderBand <-示例(1:3,500,替换= TRUE)
EthnicityGroup <-示例(1:5,500,替换= TRUE)
InitialCategory <-示例(1:5,500,替换= TRUE)
数据<- data.frame(年龄,未出生,GenderBand,EthnicityGroup,InitialCategory)
年龄<- 6岁
数据$年龄数据$儿童-3月31日== 0 <- 1
数据$Agedata$儿童313月1日>= 1和数据$儿童313月1日<= 4 <- 2
数据$年龄数据$儿童数据3月31日>= 5和数据$儿童数据31 3月3日<= 9 <- 3
数据$Agedata$儿童31 3月1日>= 10和数据$儿童31 3月1日<= 15 <- 4
数据$年龄数据$儿童数据3月31日>= 16和数据$儿童数据31 3月1日<= 50 <- 5
数据$Age <-因子(数据$Age,
levels = c(1,2,3,4,5,6), labels = c("Under 1", "1 to 4 Years Old", "5 to 9 Years Old", "10 to 15 Years Old", "16 to 50 Years Old", "Other"))数据$未生成<-因子(数据$Unborn,level= c(0,1),标签=c(Born),"Unborn"))
数据$GenderBand <- factor(数据$GenderBand,level= c(1,2,3),标签=c(“男性”,“女性”,“未知”))
数据$EthnicityGroup <- factor(数据$EthnicityGroup,
levels = c(1,2,3,4,5,6), labels = c("White","Mixed","Asian","Black","Other","Refused"))数据$InitialCategory <- factor( data$InitialCategory,
levels = c(1,2,3,4,5), labels = c("Emotional", "Multiple", "Neglect", "Phyical", "Sexual"))表<-表格(GenderBand+(未出生*年龄)+ EthnicityGroup ~ InitialCategory,data=data)
```{r output, echo=FALSE, results="asis"}html(表)
这是我想要的完美工作方式。给我这个:

然而,当我使用我的真实数据做这件事时,我得到了以下信息:

我已经在HTML中发现了这个问题,似乎出于某种原因,在某些单元格(破碎的单元格)上,html(tablular())输出了以下内容:

我完全不明白为什么它似乎在搅乱HTML输出,因为数字是由R生成的(它们是因素计数)。
理论上,我也许可以将HTML存储在一个变量中,并将gsub()中的违规字符串存储起来,但这似乎是一项杂乱无章的工作,并不是真正需要的事情。有人对此有任何洞察力吗?
发布于 2017-06-09 15:27:18
抱歉,不知羞耻的自动推广,但你可以试试我的包expss
---
title: "Table"
author: "Nick"
date: "9 June 2017"
output: html_document
---
```{r setup, include=FALSE}knitr::opts_chunk$set(echo =真)
图书馆(费用)
ChildAge31March =示例(0:19,500,替换=真)
Unborn = sample(0:1,500,替换= TRUE)
GenderBand =示例(1:3,500,替换=真)
EthnicityGroup =示例(1:5,500,替换=真)
InitialCategory =示例(1:5,500,替换=真)
data = data.frame(ChildAge31March,Unborn,GenderBand,EthnicityGroup,InitialCategory)
数据=计算(数据,{
Age = recode(ChildAge31March, 0 ~ 1, 1 %thru% 4 ~ 2, 5 %thru% 9 ~ 3, 10 %thru% 15 ~ 4, 16 %thru% 50 ~ 5, other ~ 6) val_lab(Age) = autonum( "Under 1 1 to 4 Years Old 5 to 9 Years Old 10 to 15 Years Old 16 to 50 Years Old Other")val_lab(Unborn) = num_lab( "0 Born 1 Unborn")val_lab(GenderBand) = autonum( "Male Female Unknown")val_lab(EthnicityGroup) = autonum( "White Mixed Asian Black Other Refused")val_lab(InitialCategory) = autonum( "Emotional Multiple Neglect Phyical Sexual" )})
表=数据%>%
tab_cols(InitialCategory) %>% tab_cells(GenderBand, Unborn %nest% Age, EthnicityGroup) %>% tab_stat_cases(total_row_position = "none") %>% tab_pivot()```{r output, echo=FALSE, results="asis"}表格

发布于 2018-05-30 17:20:38
有点晚了,但我也遇到了同样的问题,最近我弄明白了到底发生了什么。当R输出我的表时,它在汇总数据的每个单元格周围加上引号:
Stratified by Group
1 2 3
n " 676" " 1378" " 27245"
DON_AGE (mean (sd)) " 41.24 (12.76)" " 36.92 (11.03)" " 39.89 (17.70)"
DON_LF_LU_BRONCHO (%) " " " " " " "
Abnormal " 8 ( 1.2) " " 15 ( 1.1) " " 2258 ( 8.3) "
Missing " 631 (93.3) " " 1333 (96.7) " " 19343 (71.0) "
Normal " 37 ( 5.5) " " 30 ( 2.2) " " 5644 (20.7) "当我试图使用HTML在read中运行时,有额外空格的单元格被读取为原始HTML代码(例如,上面第1组中的异常单元格),这就是为什么我在我的表中获取代码的原因。
我使用了CreateTableOne函数,为了解决这个问题,我在print(CreateTableOne())中使用了noSpaces=T选项。然后,我使用htmlTable打印table对象,这解决了我的问题。
https://stackoverflow.com/questions/44460359
复制相似问题