数据集名称如何在一个文件夹中使用?

例如,在下面的针织R代码块中,使用deparse(substitute(x))(通常在非针织R代码中工作)不会显示针织HTML子文档中cities列表中的New YorkBerlin:

    ```{r plot-data, results='asis'}

    cities <- list(New York, Berlin)

    res <- lapply(cities, function(x) {
      knitr::knit_child(
        text = c(
          '\n',
          '## `r deparse(substitute(x))`',
          '\n',
          '```{r, out.height="100%", out.width="100%"}',
          'some_plotting_function(x)',
          '```'
        ),
        envir = environment(),
        quiet = TRUE
      )
    })

    cat(unlist(res), sep = "\n")
    ```

也就是说,在##注释行中,输出的城市名称分别显示为X[[i]],而不是New YorkBerlin.(在拨打some_plotting_function()之前,我想使用城市名称作为部分标题.)

推荐答案

要实现在HTML子文档的节标题中正确显示城市名称的预期行为,您可以修改代码以将城市名称显式地作为参数传递给子文档. 这就是你可以做到的:


cities <- list("New York", "Berlin")

res <- lapply(cities, function(city) {
  knitr::knit_child(
    text = c(
      '\n',
      paste0('## ', city),
      '\n',
      '```{r, out.height="100%", out.width="100%"}',
      'some_plotting_function("', city, '")',
      '```'
    ),
    envir = environment(),
    quiet = TRUE
  )
})

cat(unlist(res), sep = "\n")

以下是我在上面代码中所做的修改:

  1. 城市列表已更改为包含字符串而不是对象.
  2. 在"lapply"循环中,"city"被用作循环变量,而不是"x".
  3. 城市名称作为字符串参数传递给子文档中的"some_plotting_function()". 这将正确地显示城市名称作为节标题在编织HTML子文档中.

R相关问答推荐

通过绘图 Select 线串几何体并为其着色

R的GG平行坐标图中的排序变量

使用ggplot 2根据R中的类别排列Likert比例gplot

抖动点与嵌套类别变量箱形图的位置不对齐

在R中将特定列的值向右移动

bslib::card_header中的shine::downloadButton,图标而不是文本

如何调整曲线图中的y轴标签?

使用较长的查询提取具有部分匹配的列表中的较短目标,

为了网络分析目的,将数据框转换为长格式列联表

基于数据集属性将科分配给物种

R中Gamma回归模型均方误差的两种计算方法不一致

当每个变量值只能 Select 一次时,如何从数据框中 Select 两个变量的组合?

在点图上绘制置信度或预测区间ggplot2

在使用SliderInput In Shiny(R)设置输入数据的子集时,保留一些情节痕迹

将数据从一列转换为按组累计计数的单个虚拟变量

R:使用ApexCharge更改标签在饼图中的位置

在REST API中使用参数R

图中显示错误 colored颜色 的图例geom_sf

使用点图调整离散轴比例

如何在基数R中根据矩阵散点图中的因子给数据上色?