如何在R中绘制CDF和PDF以获得新功能

时间:2015-02-25 18:39:20

标签: r

如何在R中为

绘制CDF和PDF
 f <- function(x) {((2*a*b)/(x^3))*((exp(-b/(x^2))^a))}        

范围为0到无穷大

2 个答案:

答案 0 :(得分:1)

我会使用这样的东西(因为我喜欢ggplot2):

a <-1
b <- 2
f <- function(x) {((2*a*b)/(x^3))*((exp(-b/(x^2))^a))}

x <- seq(1, 20)
pdf <- f(x)
cdf <- cumsum(pdf)

library(ggplot2)
df <- data.frame(x, pdf, cdf)
ggplot(df, aes(x, pdf))+geom_line()
ggplot(df, aes(x, cdf))+geom_line()

答案 1 :(得分:0)

您应该使用默认值指定ab作为函数的参数。然后curve可用于绘制函数。

f <- function(x,a=0.5,b=4.5) {((2*a*b)/(x^3))*((exp(-b/(x^2))^a))}        
curve(f)

现在代码的方式,ab最有可能解决全局环境中的任何问题,以后您可能不需要这些内容,并且可能会导致重现结果的问题。