【问题标题】:How to add a line break before a list or a data frame如何在列表或数据框之前添加换行符
【发布时间】:2016-11-15 17:36:57
【问题描述】:

这可能是一个重复的问题,但我已经找了很长一段时间的答案,但找不到任何东西。如果我运行这段简短的代码并打印出描述和结果:

gear_query <- 5
mtcars_subset <- mtcars[mtcars$gear == gear_query, ]

paste("Cars with", gear_query, "gears:")   ## description
print(mtcars_subset)                       ## results

我得到这个输出到控制台:

> paste("Cars with", gear_query, "gears:")
Cars with 5 gears:
> print(mtcars_subset)
                mpg cyl  disp  hp drat    wt qsec vs am gear carb
Porsche 914-2  26.0   4 120.3  91 4.43 2.140 16.7  0  1    5    2
Lotus Europa   30.4   4  95.1 113 3.77 1.513 16.9  1  1    5    2
Ford Pantera L 15.8   8 351.0 264 4.22 3.170 14.5  0  1    5    4
Ferrari Dino   19.7   6 145.0 175 3.62 2.770 15.5  0  1    5    6
Maserati Bora  15.0   8 301.0 335 3.54 3.570 14.6  0  1    5    8

如何让 R 一次性打印此信息,使其看起来像这样,描述和结果之间没有任何内容:

> whatevercodethatdoesthetrick
Cars with 5 gears:
                mpg cyl  disp  hp drat    wt qsec vs am gear carb
Porsche 914-2  26.0   4 120.3  91 4.43 2.140 16.7  0  1    5    2
Lotus Europa   30.4   4  95.1 113 3.77 1.513 16.9  1  1    5    2
Ford Pantera L 15.8   8 351.0 264 4.22 3.170 14.5  0  1    5    4
Ferrari Dino   19.7   6 145.0 175 3.62 2.770 15.5  0  1    5    6
Maserati Bora  15.0   8 301.0 335 3.54 3.570 14.6  0  1    5    8

我用 cat() 试过了:

cat("Cars with", gear_query, "gears:\n", mtcars_subset)

但出现“cat”无法处理“list”的错误。我也玩过 paste(),但无法让它工作。可能是一个非常简单的问题,但我无法解决...

【问题讨论】:

  • 包装一个函数? print_gear_query = function(g = 5) {cat("Cars with", g, "gears:\n"); mtcars[mtcars$gear == g, ]}

标签: r line-breaks


【解决方案1】:

使用 knitr:

library(knitr)

gear_query <- 5
kable(mtcars[ mtcars$gear == gear_query, ],
      format = "pandoc",
      caption = paste("Cars with", gear_query, "gears:"))

Table: Cars with 5 gears:

                   mpg   cyl    disp    hp   drat      wt   qsec   vs   am   gear   carb
---------------  -----  ----  ------  ----  -----  ------  -----  ---  ---  -----  -----
Porsche 914-2     26.0     4   120.3    91   4.43   2.140   16.7    0    1      5      2
Lotus Europa      30.4     4    95.1   113   3.77   1.513   16.9    1    1      5      2
Ford Pantera L    15.8     8   351.0   264   4.22   3.170   14.5    0    1      5      4
Ferrari Dino      19.7     6   145.0   175   3.62   2.770   15.5    0    1      5      6
Maserati Bora     15.0     8   301.0   335   3.54   3.570   14.6    0    1      5      8

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2018-08-28
    • 2015-11-03
    • 1970-01-01
    • 2021-08-30
    • 2014-05-31
    • 2016-02-01
    • 1970-01-01
    相关资源
    最近更新 更多