r - 下划线的含义

标签 r shiny

R中下划线的作用是什么?例如,在下面的代码中,行:input$tbl_rows_current ;确定当前显示的数据放入变量filtered_data ;但是,如果我将其更改为 input$tbl_rows_all ,所有过滤的数据都放入变量filtered data .

我了解它在这里的作用,但它的一般用途是什么?

ui = fluidPage(dataTableOutput('tbl'),
           plotOutput('plot1')
)

server = function(input, output) {   
 output$tbl = renderDataTable({
    datatable(KSI, filter="top",rownames=TRUE,options = list(lengthChange = FALSE))
})
output$plot1 = renderPlot({  
   filtered_data <- as.numeric(*input$tbl_rows_current*)     
   print(filtered_data)   
 })
}  
shinyApp(ui=ui, server=server)

最佳答案

下划线在语义上没有意义,它们只是变量名的一部分。 (在史前时代,_ 是赋值运算符 <- 的同义词,不能用于变量名。) tbl_rows_currenttbl_rows_all只是 input 的两个特定元素列表。根据作者的喜好,它们同样可以被称为

  • tblrowscurrenttblrowsall
  • TblRowsCurrentTblRowsAll
  • tbl.rows.currenttbl.rows.all
  • orangesjackhammers

  • 如果你喜欢这种东西,请查看 Are there any official naming conventions for R?

    但是请注意,您不能更改这些名称;只有原始包作者才能拥有。这些元素不是在你的代码中定义的,而是在 Shiny 的一面——它是 Shiny 的 API/接口(interface)的一部分,它期望看到这些特定的元素(即具有这些特定名称的元素)。

    关于r - 下划线的含义,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/38461561/

    相关文章:

    css - 在 Shiny 中更改选择器输入项的颜色

    css - 防止动态 Shiny CSS 文件相互覆盖

    r - 使用 rmarkdown/knitr 将所有代码保存到最后

    r - 在R中,保存一个shapefile

    r - 如何使用R中的非标准多项式函数调整非线性曲线拟合的系数

    r - 向 R 中的字符串添加单个反斜杠 (\)

    r - 在 Shiny 的R中使用plotly绘制多线图

    r - R 是否能够在不将整个文件放入 RAM 的情况下计算大文件的列联表?

    r - picker输入字体或背景颜色

    r - 使用shinyalert确认数据更新