R 数据框名称为引号中的单词

R 数据框名称为引号中的单词,r,R,我有两个部分的问题,都与数据帧名称有关: 我想用分隔符连接两个dfs名称,例如:df1和df2将成为“df1&\u df2” 我想让R以引号中的字符形式读取数据帧名称,因此我的df称为df1,在代码的某些部分,我希望它是“df1” 当谈到第1部分时,我尝试了粘贴,但它在dfs和名称中粘贴了整个数据 在第二期中,对于更复杂的图表,能够让R将df名称理解为带引号的单词在代码中非常方便,我只需将dfs放入代码中,R就可以从中生成图表标题。我知道这里有一个非常简单的解决方法,我可以手动创建名称列表lis

我有两个部分的问题,都与数据帧名称有关:

  • 我想用分隔符连接两个dfs名称,例如:
    df1
    df2
    将成为
    “df1&\u df2”

  • 我想让R以引号中的字符形式读取数据帧名称,因此我的df称为
    df1
    ,在代码的某些部分,我希望它是
    “df1”

  • 当谈到第1部分时,我尝试了
    粘贴
    ,但它在dfs和
    名称
    中粘贴了整个数据

    在第二期中,对于更复杂的图表,能够让R将df名称理解为带引号的单词在代码中非常方便,我只需将dfs放入代码中,R就可以从中生成图表标题。我知道这里有一个非常简单的解决方法,我可以手动创建名称列表
    list=c(“df1”、“df2”)
    ,然后在需要引用数据帧内容而不是其名称的地方使用函数
    get
    ,但从长远来看,这似乎不太方便。R中是否有输出为df名称的函数?看起来像GiveMeName(df)的东西,输出是“df”?(我是故意用普通字体写的,所以没人会认为这是真正的函数)

    对于#1,你必须给我一个用例来理解你的目标

    对于#2,可以使用
    deparse(替换(df1))
    。下面是一个例子:

    plot_and_title <- function(df1) {
      data_name <- deparse(substitute(df1))
      plot(df1[[1]], df1[[2]], main = data_name)
    }
    
    plot_and_title(mtcars)
    
    plot_和_title对于#1,您必须为我提供一个用例来理解您的目标

    对于#2,可以使用
    deparse(替换(df1))
    。下面是一个例子:

    plot_and_title <- function(df1) {
      data_name <- deparse(substitute(df1))
      plot(df1[[1]], df1[[2]], main = data_name)
    }
    
    plot_and_title(mtcars)
    

    plot_和_title在@Nathan Werth的答案的基础上,您可以使用以下方法连接名称:

    paste(deparse(substitute(df1)), deparse(substitute(df2)), sep="_&_")
    

    再加上@Nathan Werth的答案,您可以使用以下方式连接名称:

    paste(deparse(substitute(df1)), deparse(substitute(df2)), sep="_&_")
    

    查看
    quote
    substitute
    。查看
    quote
    substitute