Shining R应用程序创建累积分布
我想创建一个简单的R-Shining应用程序,让人可以选择一些事情: a) 我们要测试多少年(试验)? b) 我们想要测试什么(b.1——GDP,b.2——预期寿命,b.3——幸福感) c) 根据选择的b)变量,我想采用不同的概率函数。 例如,如果选择了预期寿命,p(x)=(80-x)*0.0025+0.02,然后我想显示一个累积分布图。我从谷歌那里获取了代码,尝试更新,但没有成功,所以我非常感谢你的帮助Shining R应用程序创建累积分布,r,shiny,probability,distribution,R,Shiny,Probability,Distribution,我想创建一个简单的R-Shining应用程序,让人可以选择一些事情: a) 我们要测试多少年(试验)? b) 我们想要测试什么(b.1——GDP,b.2——预期寿命,b.3——幸福感) c) 根据选择的b)变量,我想采用不同的概率函数。 例如,如果选择了预期寿命,p(x)=(80-x)*0.0025+0.02,然后我想显示一个累积分布图。我从谷歌那里获取了代码,尝试更新,但没有成功,所以我非常感谢你的帮助 library(shiny) # Define UI for a
library(shiny)
# Define UI for application that draws a probability plot
shinyUI(fluidPage(
# Application title
titlePanel("Cumulative Binomial Probability Plot"),
# Sidebar with a slider input for value of lambda
sidebarLayout(
sidebarPanel(
sliderInput("lambda",
"age you want to reach",
min = 75,
max = 100,
value = 1)
),
# Show a plot of the generated probability plot
mainPanel(
plotOutput("ProbPlot")
)
)
))
# SERVER
library(shiny)
library(ggplot2)
library(scales)
# Shiny Application
shinyServer(function(input, output) {
# Reactive expressions
output$ProbPlot <- renderPlot({
# generate lambda based on input$lambda from ui.R
l=0:1
lambda <- seq(min(l), max(l), length.out = input$lambda)
probability=(80-lambda)*0.0025+0.02
# generate trials based on lambda value
powers=0.00025
muCalculation <- function(lambda, powers) {(80-lambda)*powers+0.002}
probability_at_lambda <- sapply(input$lambda, muCalculation, seq(75, 100, 1))
# draw the probability
par(bg = '#191661', fg = '#ffffff', col.main = '#ffffff', col.lab = '#ffffff', col.axis =
'#ffffff')
plot(probability_at_lambda,type="o",col="#b1aef4", xlab="N", ylab="Probability",
xlim=c(75, 100), ylim=c(0.0, 1.0), pch=19)
title(main="Cumulative Binomial Probability")
})
})
库(闪亮)
#为绘制概率图的应用程序定义UI
shinyUI(fluidPage)(
#申请名称
titlePanel(“累积二项概率图”),
#带有滑块输入的侧边栏,用于输入lambda值
侧边栏布局(
侧栏面板(
sliderInput(“lambda”,
“你想达到的年龄”,
最小值=75,
最大值=100,
值=1)
),
#显示生成的概率图的一个图
主面板(
绘图输出(“ProbPlot”)
)
)
))
#服务器
图书馆(闪亮)
图书馆(GG2)
图书馆(比例尺)
#闪亮的应用
shinyServer(功能(输入、输出){
#反应性表达
输出$ProbPlot我不清楚您想要做什么。但是R stats包有一个经验累积分布函数ecdf,您可以绘制。请参阅帮助?ecdf以了解其工作原理的详细信息。例如
x <- rnorm(1000)
xcdf <- ecdf(x)
plot(xcdf)
x“它不起作用”不是对你的问题的有用描述。请尽可能具体地描述你的问题。你好,我想做的是——一个人输入他想要达到的预期寿命,他输入他想要达到的预期寿命。我想用二项式概率计算来显示这一概率然后显示一张累积分布图,在人们选择的年份中。对于每个年龄段的成功率,我需要使用以下公式计算成功概率->p(x)=(80-x)*0.0025+0.02,(其中x是人们选择的年龄)我还是不明白你的问题。你是说你想计算一个人在当前年龄下活到x岁的条件概率吗?例如,P(x=80 |现在年龄=50)。然后你需要知道这些条件概率。例如,我想知道10年后的概率是多少(10次二项计算)我们的平均年龄为80岁,如果我们明年的平均年龄为0.02岁。如果我们想测试79岁的平均年龄,那么明年的平均年龄为p(79)=(80-79)*0.00025+0.02=0.02025。所以我想要一个R闪亮的应用程序,它会问,你想计算(70-100)的概率是多少岁在多少年内,我们想测试这个(n到100年),然后二项式的成功概率将是p(年龄人输入)=(80岁)*0.00025+0.002。然后是CDF图。