gpt4 book ai didi

R Shiny 可以reactive() 函数返回多个值吗?

转载 作者:行者123 更新时间:2023-12-02 11:22:04 24 4
gpt4 key购买 nike

我正在使用 react 函数来同时做两件事:

  • 读取上传的csv文件;
  • 获取文件名

  • 看下面的代码:
     file_info<-reactive({

    filename <- file.choose()
    data <- read.csv(filename, skip=1)
    file_name <- basename(filename)

    })

    然而,file_info() 只包含 file_name,这迫使我编写另一个响应式(Reactive)函数来上传数据:
     Raw<- reactive({
    inFile <- input$file1

    if (is.null(inFile))
    return(NULL)
    Raw<-read.csv(inFile$datapath, header=TRUE ,sep=",")
    })

    我认为应该有另一种有效的方法来做到这一点,提前感谢您的任何建议。

    最佳答案

    R 中的返回值意味着包含在单个对象中,或者在 function 中。 s 或在 reactive s。但是,我建议将您的内容收集在列表中,并从临时变量中的 react 中获取返回值。然后,从这个临时变量中得到你想要的。喜欢:

    myReactive({
    # does stuff

    return(
    list(
    val1 = val1,
    val2 = val2
    )
    )
    }}

    .tmp <- myReactive()
    x <- .tmp$val1
    y <- .tmp$val2

    关于R Shiny 可以reactive() 函数返回多个值吗?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/36715658/

    24 4 0
    Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
    广告合作:1813099741@qq.com 6ren.com