禁用 tibble 打印的支柱格式

Posted

技术标签:

【中文标题】禁用 tibble 打印的支柱格式【英文标题】:Disable pillar formatting for tibble printing 【发布时间】:2018-06-18 07:50:39 【问题描述】:

从 1.4.1 版本开始,tibble 打印方法似乎使用了由 pillar 包 (https://rdrr.io/cran/tibble/f/NEWS.md) 实现的附加格式。后者试图输出尽可能多的列,缩短一些值。是否可以禁用此格式并返回以前存在的打印方法?在某些情况下,通过输出额外的列并缩短值,pillar 使读取第一列的内容变得困难,这通常是分析师的意图。

很难提供可重现的示例,因为我想输出和格式将取决于您的特定显示器的具体情况。我希望这个问题足够简单:如何禁用小标题打印的支柱格式(例如在控制台中)。

编辑:在 tibble github 存储库中提出了相同的问题:https://github.com/tidyverse/tibble/issues/361#issuecomment-357233716。似乎目前实际上不可能禁用格式化。可以提供一些选项,并且包的开发版本(在撰写本文时)在格式化方面做得更好。但是,它仍然不完美,并且可能会截断重要信息(另请参阅 github 讨论所涉及的问题)。因此,禁用格式化仍然是一些用户可能想要实现的目标。

【问题讨论】:

也许my_tibble %>% as.data.frame @G.Grothendieck 谢谢。不过,保持整洁的 tibble 输出会很好。 好像pillaradds options的新开发版改了tibble输出。 trunc_mat 函数还在。它是否符合您的要求trunc_mat(mytibble, n=12,width=Inf) 帮助在??format.tbl @42- 数据框打印方法很乱,使用它肯定是从整洁的tibble哲学退了一步。 【参考方案1】:

使用pillar包的开发版本(带有devtools::install_github("r-lib/pillar")),您可以更改tibble格式的选项(参见http://pillar.r-lib.org/reference/pillar-package.html#package-options)。

如果您更改 Rprofile 中的选项,这将是永久性的。

【讨论】:

你知道你是否也可以强制科学格式?例如pillar(c(1e10, 1e-10), width = 20)pillar(c(1e10, 1e-10)) 的区别 不,我还没有查看新 tibble 格式的详细信息。 AFAICS 仍然无法禁用截断字符列。

以上是关于禁用 tibble 打印的支柱格式的主要内容,如果未能解决你的问题,请参考以下文章

如何将元数据添加到 tibble

Dplyr 警告:`...` 不为空

在gdb中禁用print pretty

我可以禁用打印页面 x of y 对话框吗?

Qt。如何在 QPrinterDialog 中选择默认打印机并禁用其余打印机?

禁用打印机的“双向通信”?