「平均±標準偏差のプロット」の編集履歴(バックアップ)一覧はこちら
「平均±標準偏差のプロット」(2008/03/22 (土) 14:25:56) の最新版変更点
追加された行は緑色になります。
削除された行は赤色になります。
x <- rnorm(50)
hist(x, freq=F)
rug(x)
lines(density(x))
#win.graph()
histogram(x, type="density", panel=function(x, ...) {
panel.histogram(x, ...)
panel.densityplot(x, ...)
panel.rug(x, ...)
})
*参照
[[R]]
#--- 例示用のサンプルデータ作成 ---#
set.seed(2801)
x <- rep(seq(5), rep(6, 5))
y <- 10 * x + 5 + rnorm(length(x), mean=0, sd=3)
#--- X, Y の平均、標準偏差 ---#
.mean <- tapply(y, x, mean)
.sd <- tapply(y, x, sd)
#--- データフレームにまとめる ---#
.mean.sd <- data.frame(
x=as.numeric(names(.mean)),
mean=.mean,
msd=.mean-.sd, # 平均 - 標準偏差
psd=.mean+.sd # 平均 + 標準偏差
)
#--- 生値プロット ---#
plot(x, y)
#--- 平均±標準偏差のプロット ---#
plot.mean.sd <- function(
data, # 名前付きベクトル
x.diff=0, # 平均値を X 軸方向にずらして表示させる際の差分
length=0.1, # エラーバーの上下の横線の幅
cex=1.2 # 平均値シンボルのサイズ
) {
x <- data["x"] + x.diff
points(x, data["mean"], pch=19, cex=cex) # 平均値を●で
arrows(
x, data["msd"], x, data["psd"], angle=90, length=length, code=3
) # エラーバー
return(invisible())
}
#--- 行単位で処理 ---#
apply(.mean.sd, 1, FUN=plot.mean.sd, x.diff=0.1)
*参照
[[R]]
表示オプション
横に並べて表示:
変化行の前後のみ表示: