小编Sté*_*ent的帖子

Haskell在根据此值调用函数时是否重新计算值?

假设我有

f :: Int -> MyType
f i = ......

voxel :: MyType
voxel = f 2

function1 :: Double -> MyType -> MyOtherType
function1 x w = ......

function2 :: Double -> MyOtherType
function2 y = function1 y voxel 
Run Code Online (Sandbox Code Playgroud)

现在,假设我调用function2两次,例如function2 1.0然后function2 2.0(我在上下文中OpenGL并且MyOtherType是要绘制的图形元素,用户可以y使用键盘进行更改).

那么,在第二次调用时function2,Haskell会重新评估voxel吗?

如果我有这样的情况,比方说是C语言,我会放一个printfvoxel知道答案,但我不能做这样的事情用纯Haskell的功能(可以吗?).

haskell

4
推荐指数
1
解决办法
97
查看次数

与ggplot2奇怪的线条

我有以下数据集:

> str(dat)
'data.frame':   5000 obs. of  3 variables:
 $ y: num  0.864 0.869 0.871 0.879 0.874 0.871 0.871 0.873 0.864 0.869 ...
 $ A: Factor w/ 5 levels "0.2","0.5","0.8",..: 1 1 1 1 1 1 1 1 1 1 ...
 $ x: num  1 2 3 4 5 6 7 8 9 10 ...
> head(dat)
      y   A x
1 0.864 0.2 1
2 0.869 0.2 2
3 0.871 0.2 3
4 0.879 0.2 4
5 0.874 0.2 5 …
Run Code Online (Sandbox Code Playgroud)

r ggplot2

3
推荐指数
1
解决办法
775
查看次数

通过插入符号返回奇怪的值来调整mtry

我调整了使用包中的函数的mtry参数.我的数据中只有列,但返回为最佳值,而这不是有效值().那是什么解释?randomForesttraincaret48Xtrainmtry=50>48

> dim(X)
[1] 93 48
> fit <- train(level~., data=data.frame(X,level), tuneLength=13) 
> fit$finalModel

Call:
 randomForest(x = x, y = y, mtry = param$mtry) 
               Type of random forest: classification
                     Number of trees: 500
No. of variables tried at each split: 50

        OOB estimate of  error rate: 2.15%
Confusion matrix:
     high low class.error
high   81   1  0.01219512
low     1  10  0.09090909
Run Code Online (Sandbox Code Playgroud)

如果我不设置tuneLength参数,情况会更糟:

> fit <- train(level~., data=data.frame(X,level)) 
> fit$finalModel …
Run Code Online (Sandbox Code Playgroud)

r random-forest r-caret

3
推荐指数
1
解决办法
2128
查看次数

如何更改闪亮的应用程序数据表输出字体颜色和辅助表元素颜色?

我正在使用深色主题(闪亮主题中的石板)创建一个闪亮的应用程序。但是当我应用该主题时,我的 renderDataTable 输出存在两个问题:

  1. 应用程序背景太暗,看不到表格外的元素(显示 XX 条目、底部页码等)
  2. 表中的文字太浅,难以阅读。

对于问题#2,我尝试了 renderDataTable 领域中的选项,例如formatStyle(),以及 css 选项,例如,list(tags$head(tags$style("shipment.table span {color: #333333 ; background: #999999;}")))但我对它们没有任何运气。我对闪亮、DT 和 css 很陌生,这可能与它有关...我尝试过的示例在下面的代码中注释掉了。

对于问题#1,我完全陷入困境。我不知道那些外部到表的元素叫什么,所以我没有运气找到可以尝试的东西!

library(shiny)
library(shinythemes)
library(DT)

d=as.data.frame(cbind(1:100,201:300))

ui<-fluidPage(
    theme = shinytheme("slate"),

    mainPanel(
        DT::dataTableOutput('shipment.table')
        #list(tags$head(tags$style("shipment.table span {color: #333333 ; background: #999999;}")))   
        #tags$head(tags$style("#shipment.table table {color: red;}"))
  )  
)


server<-function(input, output,session) {

output$shipment.table <- renderDataTable(d,filter = 'bottom',
       options = list(lengthMenu = list(c(10,20,50,100,-1), c('10','20','50','100','All')),
       pageLength = 10,autoWidth = TRUE),rownames=F) #%>% formatStyle(1,color="black")
}


shinyApp(ui=ui,server=server)
Run Code Online (Sandbox Code Playgroud)

如果运行该应用程序,您将看到左上角带有“10”的下拉框,但该框前后应该有文本,因此显示“显示 10 个条目”。右下角还有一个 1,但应该还有其他几个页面可见(它们是,只是深色背景上的深色文本)。同样,表格文本在浅灰色/白色背景上呈浅灰色,难以阅读。谢谢你的帮助!

r shiny dt

3
推荐指数
1
解决办法
4754
查看次数

使用 TAB 编辑 DT 表上的下一个单元格

在可编辑的 DT 中按 TAB 后是否有编辑下一个单元格的技巧?
这将有助于更快地编辑整行。

下面是可编辑 DT 的基本示例。

library(shiny)
library(DT)

ui <- fluidPage(
    DT::dataTableOutput('tbl1'),
    verbatimTextOutput("print")
)

server <- function(input, output, session) {

    data <- reactiveValues(x = iris[1:10,1:4])

    output$tbl1 <- DT::renderDataTable({
        DT::datatable(data = isolate(data$x), editable = TRUE, rownames = FALSE)
    })

    proxy_tbl1 <- dataTableProxy("tbl1")

    observeEvent(input$tbl1_cell_edit, {
        info = input$tbl1_cell_edit
        i = info$row
        j = info$col + 1
        v = info$value
        data$x[i, j] <- DT::coerceValue(v, data$x[i, j])
        replaceData(proxy_tbl1, data$x, resetPaging = FALSE, rownames = FALSE)
    })

    output$print <- renderPrint({
        print(data$x)
    }) …
Run Code Online (Sandbox Code Playgroud)

javascript r datatables shiny dt

3
推荐指数
1
解决办法
535
查看次数

R Shiny Dashboard DataTable 列宽

我正在构建一个 Shiny 仪表板,仪表板上的一个面板是 DataTable。

下面是我的代码:

  output$table = DT::renderDataTable(b1, selection = 'single')
Run Code Online (Sandbox Code Playgroud)

数据表中的列宽现在根据列名的宽度进行调整。但是,某些单元格值是文本,并且这些文本被压缩以显示在多行中,因为它们比列名称长。

我想知道是否有办法调整列宽以适应一行中的单元格值。

或者,有没有办法为列设置固定宽度并通过悬停来获取单元格值的全部内容?

提前致谢。

javascript r shiny shinydashboard dt

3
推荐指数
1
解决办法
813
查看次数

如何将downloadHandler用于在闪亮的数据表中创建的下载按钮?

我创建的下载按钮闪亮的数据表的每一行内部,如图这里。桌子位于其中一个闪亮的模块内。我想知道在使用downloadHandler任何下载按钮时应该将哪个 ID 附加到输出?我XXXXXXXXXXXX在下面的代码中显示了可疑的价值。

library(shiny)
library(DT)
#> 
#> Attaching package: 'DT'
#> The following objects are masked from 'package:shiny':
#> 
#>     dataTableOutput, renderDataTable


## module UI
test_data_table_ui  <- function(id){
  ns <- NS(id)
  tagList(
    DT::dataTableOutput(outputId = ns("my_data_table"))
  )

}

## module server
test_data_table_server <- function(input, output, session ){
  ns = session$ns

  myValue <- reactiveValues(check = '')

  shinyInput <- function(FUN, len, id, ns, ...) {
    inputs <- character(len)
    for (i in seq_len(len)) {
      inputs[i] <- as.character(FUN(paste0(ns(id), i), …
Run Code Online (Sandbox Code Playgroud)

r shiny dt

3
推荐指数
1
解决办法
1137
查看次数

从 R 闪亮的数据表按钮扩展下载文件名的动态命名

我有:


library(shiny)
library(DT)

ui <- fluidPage(
    h2("Explorer"),

    tabPanel(h3("Inspector"),
             p("Overview of data for a particular sample."),
             selectInput(inputId = "sample",
                         label = h3("Select sample"),
                         selectize = TRUE,
                         choices = names(vcf_tibbles)),
             dataTableOutput("sample_inspector")
            )
    )

server <- function(input, output) {
  output$sample_inspector <- DT::renderDataTable(

      sample_overview(sample_id = input$sample, vcf_tibbles = vcf_tibbles),
      rownames = FALSE,
      extensions = 'Buttons',
      options = list(paging = FALSE,
             dom = 'Bfrtip',
             buttons = list( list(extend = 'csv',   filename =  paste("snp", input$sample, sep = "-")),
                     list(extend = 'excel', filename =  paste("snp", input$sample, sep …
Run Code Online (Sandbox Code Playgroud)

r shiny dt

3
推荐指数
1
解决办法
1198
查看次数

展开/折叠闪亮的 selectInput 函数

我想找到一个资源,允许我的 Shiny selectInput 函数根据我创建的类别标题展开/折叠。我已经搜索了一些引导程序资源,但还没有成功。请原谅我的最小工作示例,我承认可能有更有效的方法来提供 MWE。感谢您提供的任何建议。

library(shiny)
library(tidyverse)
#create a quick dataset to plot
schools <-  as.data.frame(table(
    c('Adams', 'Van Buren', 'Clinton', 'Douglas', 'Edwards', 
              'Franklin', 'Grant', 'Harrison', 'Ignatius', 'Justice', 
              'Kellogg', 'Lincoln'), 
    dnn = list("school")))

enrollment <- as.data.frame(table(
    c(300, 305, 265, 400, 500, 450, 475, 900, 800, 850, 1200, 1500), 
    dnn = list("enrollment")))

schoolsDataframe <- schools %>% 
    bind_cols(enrollment) %>% 
    select(school, enrollment)

#define data elements for selectInput choices argument
elem <- c('Adams', 'Van Buren', 'Clinton', 'Douglas')
mid <- c('Edwards', 'Franklin', 'Grant')
high <- c('Harrison', …
Run Code Online (Sandbox Code Playgroud)

javascript r shiny shinybs selectinput

3
推荐指数
2
解决办法
753
查看次数

在 R 中实现算术系统

我开始在 R 中实现一种数字。我有一个函数可以对它们进行加法、乘法等。现在我想为这些数字的算术做一个方便的接口。也就是说,我不希望用户键入multiply(x, add(y, z)),而是x * (y + z)等等。就效率而言,实现此目的的最佳方法是什么,S3 还是 S4?我已经在 S4 中为一个包( lazyNumbers )做了这样的算术实现,这有点长,有点“冗长”。S3是不是更舒服?我还不知道如何使用 S3,但如果需要的话我会学习。

math r r-s3 r-s4

3
推荐指数
1
解决办法
104
查看次数