我试图使用R中的lines()函数绘制正态分布的拟合线,但它产生了一个错误。数据是SP500,我正在尝试比较SP500的对数回报分布与具有计算平均值和标准差的正态分布。
SP500_R = diff(log(SP500['2008/2009']))
# compare the log return with normal distribution using dnorm function
mu = mean(SP500_R, na.rm=T)
sigma = sd(SP500_R, na.rm=T)
hist(SP500_R, nclass = 20, probabilit
? normpdf()函数在R中的最佳替代品是什么?其中,MATLAB的normpdf( x )返回标准正态分布的概率密度函数(pdf),以x中的值计算。 我尝试了R中的dnorm()函数,但是它给出了一个错误,它是- Error in dnorm(z) : Non-numeric argument to mathematical function 注意:我使用的矩阵是属于dgeMatrix class的z,其维度为(645x7)。 有人能告诉我这里出了什么问题吗。感谢你的帮助,非常感谢。
我试图使用()绘制多个函数。我的例子试图用不同的均值和相同的标准差绘制多个正态分布。
png("d:/R/standardnormal-different-means.png",width=600,height=300)
#First normal distribution
curve(dnorm,
from=-2,to=2,ylab="d(x)",
xlim=c(-5,5))
abline(v=0,lwd=4,col="black")
#Only second normal distribution is plotted
我正在尝试创建这个图。当我尝试的时候,下面的代码是不正常分布的。
x <- seq(60,140,20)
y <- dnorm(x,0,1)
plot(x,y,type="l",xlab = "x",ylab = "f(x)",main = "The total shades area is equal to 0.05")
x<-seq(60,80)
y<-dnorm(x,0,1)
polygon(c(60,x,80),c(0,y,0),col="red")
x<-seq(1
我在网上找到了这个R码:
stdDev <- 0.75;
x <- seq(-5,5,by=0.01)
y <- dnorm(x,sd=stdDev)
right <- qnorm(0.95,sd=stdDev)
plot(x,y,type="l",xaxt="n",ylab="p",
xlab=expression(paste('Assumed Distribution of ',bar(x))),
axes=FALSE,ylim=c(0,max(y)*1.05),xlim=c(min
我在绘制标准正态分布。
curve(dnorm(x), from=-4, to=4,
main = "The Standard Normal Distibution",
ylab = "Probability Density",
xlab = "X")
出于教学上的原因,我想把这个区域遮挡在我所选择的分数以下。我该怎么做?
我正在构建一个应用程序,以更好地了解对数正态分布和正态分布的差异。该应用程序应使用ggplot2显示模拟数据的直方图(正常或对数正态),并拟合正态,对数正态密度和内核密度到假数据。由于某些原因,下面的应用程序不会显示ggplot2图表。
# Define UI for application that draws a histogram
library(shiny)
library(ggplot2)
library(stats)
library(gridExtra)
set.seed(15)
ui <- fluidPage(
# Application title
拒收抽样
我正在使用截断正态分布的拒绝抽样,请参阅下面的r代码。如何才能在特定的n处停止采样?例如,1000个观察值。也就是说,当接受的样本数达到n (1000)时,我想停止采样。
有什么建议吗?非常感谢您的帮助:)
#Truncated normal curve
curve(dnorm(x, mean=2, sd=2)/(1-pnorm(1, mean=2, sd=2)),1,9)
#create a data.frame with 100000 random values between 1 and 9
sampled <- data.frame(proposal = r
如何使用ggplot将任意参数分布叠加到直方图上?
我做过基于的尝试,但我不明白缩放因子从何而来。这种方法合理吗?如何将其修改为使用ggplot?
下面是使用此方法绘制正态分布和对数正态分布的一个示例:
## Get a log-normalish data set: the number of characters per word in "Alice in Wonderland"
alice.raw <- readLines(con = "http://www.gutenberg.org/cache/epub/11/pg11.txt",
我曾尝试以下列方式确定正态分布的有效性:
xfit<-seq(min(x),max(x),length=1000)
yfit<-dnorm(xfit,mean=mean(x),sd=sd(x))
在这段代码中,x是一个数组,它的值在-15到-5之间。
通过将其与直方图和Q-Q图进行比较,我评估了分布情况,方法如下:
#Fitting in histogram with normal curve
x <- dataM31
h<-hist(x, breaks=10, col="red", xlab="Absolute Magnitude",