相対頻度テーブルの描画方法

Src=as.factor(c("nc","us","us","nc","nc","ci","nn","pr","nc","nc","ak","ak","ak","ak","ci","hv","ak","ci","nc","nc"))
Version = as.factor(c(0,4,7,0,0,0,9,0,0,0,1,1,1,1,0,2,1,0,0,0))
table(Src,Version)

出力:

    Version
Src  0 1 2 4 7 9
  ak 0 5 0 0 0 0
  ci 3 0 0 0 0 0
  hv 0 0 1 0 0 0
  nc 7 0 0 0 0 0
  nn 0 0 0 0 0 1
  pr 1 0 0 0 0 0
  us 0 0 0 1 1 0

カウントされた数値を表示する代わりに、代わりに相対的な頻度を表示できますか?

2
nl ru de
prop.table(table(Src、Version))のような意味ですか?
追加された 著者 A5C1D2H2I1M1N2O1R2T1,

3 答え

確かに。その効果を得るには prop.table()を使用できます:

prop.table(table(Src, Version))

これは次のようなテーブルを生成します:

    Version
Src     0    1    2    4    7    9
  ak 0.00 0.25 0.00 0.00 0.00 0.00
  ci 0.15 0.00 0.00 0.00 0.00 0.00
  hv 0.00 0.00 0.05 0.00 0.00 0.00
  nc 0.35 0.00 0.00 0.00 0.00 0.00
  nn 0.00 0.00 0.00 0.00 0.00 0.05
  pr 0.05 0.00 0.00 0.00 0.00 0.00
  us 0.00 0.00 0.00 0.05 0.05 0.00

行または列の相対頻度を要求するには、オプションの引数 margin を使用できます。

8
追加された

それは本当によくある質問です。

テーブルをその合計で除算するだけです:

tab <- table(Src,Version)
tab/sum(tab)

?prop.table も参照してください。

3
追加された

1つのオプションは、 beside = TRUE を指定して barplot を使用して、グループ間の相対(プロットは比例オプション、尺度だけで変化しない)を表示することです。

 barplot(table(Src,Version),beside=TRUE)

enter image description here

0
追加された
@AnandaMahto多分:)違いを見るために2をプロットしようとする。私は実際には特にprop.tableの非常に面白いではない。そして、私の答えは、他の人の答えとして使われた最初のコメントの代わりになっていました...
追加された 著者 agstudy,
これは "draw"の文字通りの解釈です)しかし、私はまだあなたが望む出力を得るために barplot(prop.table(table ... )が必要だと思います。
追加された 著者 A5C1D2H2I1M1N2O1R2T1,