【发布时间】:2017-06-09 14:27:16
【问题描述】:
这是一个代码示例,它将在 R Markdown 中生成我想要的表格:
---
title: "Table"
author: "Nick"
date: "9 June 2017"
output: html_document
---
```{r setup, include=FALSE}
knitr::opts_chunk$set(echo = TRUE)
library(tables)
Age <- sample(0:19, 500, replace = TRUE)
Unborn <- sample(0:1, 500, replace = TRUE)
GenderBand <- sample(1:3, 500, replace = TRUE)
EthnicityGroup <- sample(1:5, 500, replace = TRUE)
InitialCategory <- sample(1:5, 500, replace = TRUE)
data <- data.frame(Age, Unborn, GenderBand, EthnicityGroup, InitialCategory)
Age <- 6
data$Age[data$ChildAge31March == 0] <- 1
data$Age[data$ChildAge31March >= 1 & data$ChildAge31March <= 4] <- 2
data$Age[data$ChildAge31March >= 5 & data$ChildAge31March <= 9] <- 3
data$Age[data$ChildAge31March >= 10 & data$ChildAge31March <= 15] <- 4
data$Age[data$ChildAge31March >= 16 & data$ChildAge31March <= 50] <- 5
data$Age <- factor(data$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"))
data$Unborn <- factor(data$Unborn, levels = c(0,1), labels = c("Born","Unborn"))
data$GenderBand <- factor(data$GenderBand, levels = c(1,2,3), labels = c("Male","Female","Unknown"))
data$EthnicityGroup <- factor(data$EthnicityGroup,
levels = c(1,2,3,4,5,6),
labels = c("White","Mixed","Asian","Black","Other","Refused"))
data$InitialCategory <- factor(data$InitialCategory,
levels = c(1,2,3,4,5),
labels = c("Emotional",
"Multiple",
"Neglect",
"Phyical",
"Sexual"))
Table <- tabular(GenderBand + (Unborn * Age) + EthnicityGroup ~ InitialCategory, data=data)
```
```{r output, echo=FALSE, results="asis"}
html(Table)
```
这非常符合我的要求。给我这个: 但是,当我使用真实数据执行此操作时,我得到了: 我已经在 HTML 中发现了这个问题,并且似乎出于某种原因,在某些单元格(损坏的单元格)上,html(tablular()) 输出了以下内容:
我完全不知道为什么它似乎在扰乱 HTML 输出,因为这些数字是由 R 生成的(它们是因素的计数)。
理论上,我也许可以将 HTML 输出存储在一个变量中,并将 gsub() 存储在有问题的字符串中,但这对于一些不应该真正需要的东西来说似乎是一种混乱的解决方法。有人对此有任何见解吗?
【问题讨论】:
-
试试
html(htmltools::htmlEscape(Table)) -
谢谢,但那没有什么区别。 :(
标签: html r html-table markdown html-escape-characters