R笔记本中数字的输出

Output of numbers in R notebook

我有一个关于在 R 笔记本中内联输出数字的问题。 我想使用 dplyr 和管道切换到更易读的代码,但现在我想计算的数字不再与文本显示一致。

到目前为止,我的代码是这样写的:

Number of dogs: `r nrow(animals[which(animals$species == "dog"),])`!

我得到了内嵌的数字:

Number of dogs: 8!

如果我切换到

Number of dogs: `r animals %>% filter(species == "dog") %>% count()`!

输出不再是内联的,而是插入到下面一行,周围有一个框:

Number of dogs:
[              n]
[          <int>]
[             90]
[1 row          ]
!

如何取回内联输出?

结果被强制转换为 tibble

library(dplyr)

(xy <- iris %>% filter(Species == "setosa") %>% count())

# A tibble: 1 × 1
      n
  <int>
1    50

包裹成as.numeric得到一个数字(长度为1的向量)。

> as.numeric(xy)
[1] 50

unlist(xy) 也有效。

不清楚 OP 是如何编码的


title: "Testing"
author: "akrun"
date: "April 28, 2017"
output: pdf_document
---

```{r setup, include=FALSE}
knitr::opts_chunk$set(echo = TRUE)
library(dplyr)
library(tibble)
```

```{r code1, eval=TRUE, echo = FALSE}

animals <- data.frame(species = c("dog", "cat", "dog", "cat"), stringsAsFactors=FALSE)
animals1 <- data_frame(species = c("dog", "cat", "dog", "cat"), stringsAsFactors=FALSE)
animals2 <- as_tibble(animals)
```


Number of dogs: `r animals %>% filter(species == "dog") %>% count()`!

Number of dogs: `r animals1 %>% filter(species == "dog") %>% count()`!

Number of dogs: `r animals2 %>% filter(species == "dog") %>% count()`!

给出输出