我有一个闪亮的对话,允许用户输入数据库的凭据。
问题是该模块是在被调用函数内部打开的,因此我需要以某种方式暂停该函数继续运行,直到用户输入所需字段。我尝试过使用req,但无法使其工作,observeEvent()也无法工作,因为我无法return从该环境中获得任何东西。
如果我不以某种方式暂停程序,该函数将在没有用户名和密码的情况下继续运行,并且不会获取数据。“取消暂停”的触发器是input$Submit模态中的按钮。
library(shiny)
ui<-
fluidPage(
sidebarLayout(position="left",
sidebarPanel("Parameters",width = 4,
radioButtons("Type","Test", choices= list("Test"="p",
"Test"="l")),
actionButton("GO","Open Modual")
),
mainPanel(
plotOutput("Test")
)))
server<- function(input,output){
Credential<-function(Test){
showModal(modalDialog(
title = "Credentials Required",
textInput("Username", "Enter User Name", value = ""),
textInput("Password", "Enter Password:", value = ""),
footer = actionButton("Submit", "Submit"),
modalButton("Cancel"))
)
#Use Assigned Username and Password to go fetch data.
#Note data must be returned, somehow need to pause or somthing here.
}
#Call Function …Run Code Online (Sandbox Code Playgroud) 我知道,我知道....另一个合并的 Df 问题,请听我说,因为我已经搜索了关于这个问题的答案,但没有出现。
我正在合并两个 Df,一个比另一个小,并进行左合并,以将较长的 DF 与较小的 DF 相匹配。
这很有效,除了一个问题,当右侧(较长)df 有重复项时,行会添加到左侧(较小)df 中。
一个例子:
Row<-c("a","b","c","d","e")
Data<-(1:5)
df1<-data.frame(Row,Data)
Row2<-c("a","b","b","c","d","e","f","g","h")
Data2<-(1:9)
df2<-data.frame(Row2,Data2)
names(df2)<-c("Row","Data2")
DATA<-merge(x = df1, y = df2, by = "Row", all.x = TRUE)
>DATA
Row Data Data2
1 a 1 1
2 b 2 2
3 b 2 3
4 c 3 4
5 d 4 5
6 e 5 6
Run Code Online (Sandbox Code Playgroud)
看到额外的“b”行?,这就是我想要摆脱的,我想保留左边的 DF,但非常严格,就像 DF1 中有 5 行,合并时我希望只有 5行。
像这样...
Row Data Data2
1 a 1 1
2 b 2 2
3 …Run Code Online (Sandbox Code Playgroud) 我正在尝试安装 Shiny 软件包,但收到此错误
\n\nError in loadNamespace(i, c(lib.loc, .libPaths()), versionCheck = vI[[i]]) : \n namespace \'httpuv\' 1.4.1 is being loaded, but >= 1.4.4 is required\nERROR: lazy loading failed for package \'shiny\'\n* removing \'C:/Users/ikum/Documents/R/win-library/3.3/shiny\'\nWarning in install.packages :\n running command \'"C:/PROGRA~1/R/R-33~1.2/bin/x64/R" CMD INSTALL -l "C:\\Users\\ikum\\Documents\\R\\win-library\\3.3" C:\\Users\\ikum\\AppData\\Local\\Temp\\RtmpcbANIA/downloaded_packages/shiny_1.2.0.tar.gz\' had status 1\nWarning in install.packages :\n installation of package \xe2\x80\x98shiny\xe2\x80\x99 had non-zero exit status\nRun Code Online (Sandbox Code Playgroud)\n\n即使当我尝试下载httpuv 使用 targz 文件的最新版本时,它仍然是 1.4.1 版本。我httpuv也手动删除并从 CRAN 存储库重新安装它。似乎什么都不起作用。
我也有最新版本的 RStudio 和 R。
\n\n有针对这个的解决方法吗?
\n