我想在markdown中将输出显示为表格,并希望使用if timesOfDay[0] < timesOfDay[1] {
Swift.print("date[0] comes first")
} else if timesOfDay[0] == timesOfDay[1] {
Swift.print("times are equal")
} else {
Swift.print("date[1] comes first")
}
来设置我的输出样式。
所以这就是我保存为kable
a
在控制台中看起来像这样:
a <- sapply(storm[,c("evtype", "fatalities", "injuries", "propdmg","cropdmg")], function(x) table(is.na(x)))
假设我不想更改名称,我该如何使用a
evtype.FALSE fatalities.FALSE injuries.FALSE propdmg.FALSE
902297 902297 902297 902297
cropdmg.FALSE
902297
。我读到x必须是一个矩阵或数据帧,并尝试kable(x)
,这是输出的样子
as.data.frame
我看到&#34; a&#34;作为一个条目进入
我也试过像 kable(as.data.frame(a))
[1] "| | a|" "|:----------------|------:|"
[3] "|evtype.FALSE | 902297|" "|fatalities.FALSE | 902297|"
[5] "|injuries.FALSE | 902297|" "|propdmg.FALSE | 902297|"
[7] "|cropdmg.FALSE | 902297|"
attr(,"format")
.
.
这样的论点,但我将不得不继续这一点,并希望得到一些关于如何思考这一点的指示。谢谢
答案 0 :(得分:1)
我无法重现您的问题(即使使用我自己的数据,因为您没有发布您的问题)。但这是我能够看到的:
out <- sapply(split(iris, iris$Species), function(a) table(is.na(a)))
out
# setosa.FALSE versicolor.FALSE virginica.FALSE
# 250 250 250
library(knitr)
kable(as.data.frame(out))
# | | out|
# |:----------------|---:|
# |setosa.FALSE | 250|
# |versicolor.FALSE | 250|
# |virginica.FALSE | 250|
它被格式化为乳胶表,而不是字符串。但也许你已经设定了一个选项或者其他你没有向我们展示的选项。
但是,有些选择:
kable(data.frame(Species = names(out), Rows = unlist(out)), row.names = FALSE)
# |Species | Rows|
# |:----------------|----:|
# |setosa.FALSE | 250|
# |versicolor.FALSE | 250|
# |virginica.FALSE | 250|
(修改了行名称上的标题。)或者:
data.frame(Species = names(out), Rows = unlist(out)) %>%
spread(Species, Rows) %>%
kable()
# | setosa.FALSE| versicolor.FALSE| virginica.FALSE|
# |------------:|----------------:|---------------:|
# | 250| 250| 250|
但我一般认为,您希望使用原始标签(例如setosa
),而不是setosa.FALSE
。无论如何,如果这些不符合您的需求,请澄清您的预期产量。
答案 1 :(得分:1)
kable(a)
应该这样做。
> a <- sapply(iris, function(x) table(is.na(x), useNA = "always"))
> kable(a)
| | Sepal.Length| Sepal.Width| Petal.Length| Petal.Width| Species|
|:-----|------------:|-----------:|------------:|-----------:|-------:|
|FALSE | 150| 150| 150| 150| 150|
|NA | 0| 0| 0| 0| 0|
另请注意,您可能希望将{NAC_FALSE参数设置为table()
,否则您的单个未命名行会有点混乱。