web-dev-qa-db-ja.com

どのようにhistを使用してRの相対頻度をプロットしますか?

どのようにhist()を使用してRの相対頻度をプロットしますか?

次のようにすると、密度プロットが表示されますが、相対周波数プロットが必要です。

a <- c(0,0,0,1,1,2)
hist(a, freq=FALSE)

次の相対頻度のヒストグラムを表示したい:

.5(0〜1)

1〜2の場合は.33

2〜3の場合は.166。

13
Will

ラティスでhistogram()関数を使用してみることができます

a <- c(0,0,0,1,1,2)
library(lattice)
histogram(a)

デフォルトはパーセントです。

13
Greg

CRANの HistogramTools パッケージに新しい関数を追加しました。これは、ヒストグラムオブジェクトを取得し、相対頻度ヒストグラムプロットを生成するPlotRelativeFrequency()です。これは現在R-Forgeから入手可能で、次の [〜#〜] cran [〜#〜] リリースでHistogramTools 0.3に含まれる予定です。

基本的に、Rのデフォルトヒストグラムに2つの変更を加えるだけです。最初に、各カウントをすべてのカウントの合計で除算する必要があり、Y軸ラベルを置き換えて、プロットされていることを確認する必要があります。相対周波数。

x<-runif(100)
h<-hist(x, plot=F)
h$counts <- h$counts / sum(h$counts)
plot(h, freq=TRUE, ylab="Relative Frequency")

または、単に

install.packages("HistogramTools", repos="http://R-Forge.R-project.org")
library(HistogramTools)
PlotRelativeFrequency(hist(x, plot=F))

enter image description here

7
MurrayStokely
hist(a, breaks=c(0, 1, 2, 3), freq=FALSE, right=FALSE)
6
caracal

適切に従来のヒストグラムではない...

h<-hist(yourdata)
plot(h$mids,100*h$counts/sum(h$counts),type="h")
2
histo<-hist(yourvariable)
barplot(histo$counts/n,col="white",space=0)->bp   # n=length(yourvariable)
axis(1,at=c(bp),labels=histo$mids)
title(ylab="Relative Frequency",xlab="Your Variable Name")
1
king2rook1