如何解决R Shiny网状包和Python
我正在研究名为 Reticulate 的 R Shiny 包。
我正在关注 Youtube,但出现错误。
R 闪亮代码
library(shiny)
library(reticulate)
source_python("practice2_simulator.py")
ui <- fluidPage(
titlePanel("Using SHiny with Python"),sidebarLayout(
sidebarPanel(
numericInput(
'num_tosses',label = "Number of Coin Tosses",value = 50
),numericInput(
'num_sims',label = "Number of Simulations",value = 1000
),sliderInput(
'bias',label = "Probability of Obstaining Heads",value = 0.5,min = 0,max = 1,step = 0.1
)
),mainPanel(
plotOutput('heads_plot')
)
)
)
server <- function(input,output) {
output$heads_plot <- renderPlot({
sims <- head_dist(input$num_tosses,input$num_sims,input$bias)
hist(sims,col = "#75AADB",border = 'white',xlab = "Number of Heads")
})
}
shinyApp(ui,server)
Python 代码
from random import random
def head_dist(num_tosses,num_sims,bias):
return [num_heads(num_tosses,bias) for in x range(num_sims)]
def num_heads(num_tosses,bias):
return sum([random() < bias for x in range(num_tosses)])
我收到以下错误
py_run_file_impl(file,local,convert) 中的错误:
语法错误:语法无效(第 4 行)
第 4 行是
source_python("practice2_simulator.py")
你能帮我为什么会出现这样的错误吗?
解决方法
你得到的错误是关于你的 Python 文件中的第 4 行:
1 from random import random
2
3 def head_dist(num_tosses,num_sims,bias):
4 return [num_heads(num_tosses,bias) for in x range(num_sims)]
你的列表理解似乎有一个错字,我认为你需要改成这样:
return [num_heads(num_tosses,bias) for x in range(num_sims)]
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。