次のようなデータフレームがあります。
bin_with_regard_to_strand CLONE3
31 0.14750872
33 0.52735917
28 0.48559060
. .
. .
CLONE3
このデータ フレームを使用して、特定の値に対応する すべての値が 1 つのプロットを生成するような方法でバイオリン プロットを生成したいと考えていbin_with_regard_to_strand
ます。さらに、すべてのプロットを同じグラフィック デバイスに表示したい (私は R-studio を使用しており、すべてのプロットを 1 つのプロット ウィンドウに表示したい)。理論的には、次の方法でこれを行うことができます。
vioplot(df$CLONE3[which(df$bin_with_regard_to_strand==1)],
df$CLONE3[which(df$bin_with_regard_to_strand==2)]...)
しかし、bin_with_regard_to_strand
60 の異なる値があるため、これは少しばかげているように思えます。私は使用してみましたtapply
:
tapply(df$CLONE3, df$bin_with_regard_to_strand,vioplot)
しかし、それは 60 の異なるウィンドウ (プロットごとに 1 つ) を開くことになります。または、add
パラメーターを使用した場合:
tapply(df$CLONE3, df$bin_with_regard_to_strand,vioplot(add=TRUE))
すべての値からのデータを含む単一のプロットを生成しましたbin_with_regard_to_strand
(線で区切られています)。
これを行う方法はありますか?