禁用 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 输出会很好。
好像pillar
adds 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 打印的支柱格式的主要内容,如果未能解决你的问题,请参考以下文章