ベクトル(v<-runif(1000)
など)がある場合は、そのヒストグラムをプロットできます(v
は一様分布のサンプルであるため、多かれ少なかれ水平線として表示されます)。
ただし、ベクトルとそれに関連する重みがあるとします(たとえば、w<-seq(1,1000)
に加えてv<-sort(runif(1000))
)。たとえば、これははるかに大きなデータセットに対するtable()
の結果です。
新しいヒストグラムをプロットするにはどうすればよいですか? (この例では、y=x
行のように見えるはずです)。
table
(hist(rep(v,w))
)を使用すると、rep
の効果を元に戻すことができると思いますが、この「解決策」は醜く、リソースが多いようです(サイズsum(w)
)、整数の重みのみをサポートします。
パッケージplotrix
には関数weighted.hist
があり、これはあなたが望むことをします:
w<-seq(1,1000)
v<-sort(runif(1000))
weighted.hist(v, w)
library(ggplot2)
w <- seq(1,1000)
v <- sort(runif(1000))
foo <- data.frame(v, w)
ggplot(foo, aes(v, weight = w)) + geom_histogram()