为什么我的kable表会产生此“无适用方法”错误?

时间:2019-03-15 00:11:43

标签: r dplyr knitr kableextra

我已经搜索过,但是很遗憾,以前的讨论(例如this one)没有帮助。我无法诊断此问题中的错误。从根本上讲,我试图从表中排除某些行或列。但是,我的代码:

library(kableExtra)
library(knitr)
library(dplyr) 
library(tidyr)      

knitr::kable(mtcars, digits=3) %>%
  dplyr::filter(cyl == 6) %>% 
    kableExtra::kable_styling()

产生此错误:

  

UseMethod(“ filter_”)中的错误:   没有适用于“ knitr_kable”类对象的“ filter_”适用方法

从先前的讨论中,我知道dplyrfilter中的stats屏蔽掉了,这就是为什么我使用双冒号("::")来指定我想要的库的原因。错误援引filter_(带下划线)的事实告诉我,问题出在dplyr内或我对此有所了解。 dplyr的版本为0..8.0.1,knitr的版本为1.22。

任何帮助将不胜感激!

1 个答案:

答案 0 :(得分:2)

您以错误的顺序执行了正确的事情-但您走在正确的轨道上。您需要先将数据集传送到kable,然后再对其进行操作。让我知道这是否有帮助,还有其他问题!

library(kableExtra)
library(knitr)
library(dplyr) 
library(tidyr)      

mtcars %>%
  filter(cyl == 6) %>%
  kable(digits=3) %>%
  kable_styling()

enter image description here