在R中绘制分位数

NSA*_*SAA 4 plot r graph subset quantile

我试图找到矩阵列的平均值,平均值±标准差和某些分位数(5%,50%,95%).

矩阵的尺寸为10*20(行表示样本编号,列表示时间):

在此输入图像描述

现在,从这个数据集中,我想找到如上所述的分位数.我尝试了以下方法:

在此输入图像描述

但这些功能只给我一个值.我希望每次都能获得上述方法(均值,标准偏差,分位数).

那么,我们如何绘制一个图表,其中x轴是时间t(t = 1到t = 20),y轴是基金值,所有5行都显示(平均值,平均值±标准差,5%分位数) ,50%分位数和95%分位数).

非常感谢您的帮助.

非常感谢

Mar*_*box 5

apply将允许您将函数应用于矩阵的每一行或每列.您可以定义矩阵,要应用的维(行= 1,列= 2),函数(例如quantile)以及函数的其他参数.

例:

set.seed(1)
Fund <- matrix(rnorm(20*10), ncol=20, nrow=10)
qs <- apply(Fund, 2, quantile, probs=c(0.05, 0.5, 0.95))
qs
ylim=range(qs)
plot(seq(ncol(Fund)), qs[1,], t="l", lty=2, ylim=ylim) #5%
lines(seq(ncol(Fund)), qs[2,], lty=1, lwd=2) #50%
lines(seq(ncol(Fund)), qs[3,], lty=2, col=2)  #95%
legend("topleft", legend=rev(rownames(qs)), lwd=c(1,2,1), col=c(2,1,1), lty=c(2,1,2))
Run Code Online (Sandbox Code Playgroud)

在此输入图像描述