Jittering plotを用いたデータの可視化

例として、以下のような箱ひげ図、Violin plotがあったとする。

par(mfrow=c(1,3))
boxplot(x)
boxplot(x,notch=TRUE)
vioplot(x,col=0)


すぐ気付くことではあるが、普通の箱ひげ図だと
中央から四分位点までの広がりが大き過ぎる。
分布が単峰性かどうかなど、
「まずはヒストグラムを書く」ことの重要性がよく分かる。

Violin plotでは分布がある程度分かるが、
それでも、限界がある。
特に、データ数が少ない場合には、Jittering / Jittered plotを
描くのは優れた方法と考えられる。

x <- c(rnorm(25,25),rnorm(25,10)) #データは二つの正規分布から生成
plot(x ~ jitter(rep(1,50),3),xlim=c(0.5,1.5),cex=0.5)

具体的には、以下のような場合に威力を発揮する。

x <- c(rnorm(25,25),rnorm(25,10),rnorm(25,50)) #データは三つの正規分布から生成
par(mfrow=c(1,2))
vioplot(x,col=0) #Violin plotだと壺型になってよく分からない
plot(x ~ jitter(rep(1,75),3),xlim=c(0.5,1.5),cex=0.5)

調査不足で、日本語での名前が調べられていないが、
Jittering plot / Jittered plotなどと検索すると
英語の情報は引っかかってくる。

最近は、これらまで考慮した
pirateplot()がyarrrに入っているので、便利。

library(yarrr)
pirateplot(y ~ x, data = dat)

Fedora25 for workstationにMACS2を入れるまで

lpmなどが使いたかったので、gccが古いCentOS6を捨てて、CentOS7に目もくれず、なぜかFedora25を使い始めた。

モダン、かつ人柱感がすごい。。。
あと、ASRockのX58 extreme 3は、
たぶん、SSDUSBメモリからはOSをブートできない。
BIOSをアップデートしても無理だった。

さて、lpmのインストールはとてもスムーズに終わったので、
調子に乗って色々とインストールしているのだが、
bedtools2.18などが入らない。。。

あと、MACS2がない。
pip install MACS2などとすると、

/usr/lib/rpm/redhat/redhat-hardened-cc1: No such file or directory

とくるのでここを参考に

sudo dnf install redhat-rpm-config

すると

pyconfig.h: No such file or directory

とくるので、ここを参考に

sudo yum install python-devel
sudo pip install MACS2

とすれば、大丈夫。本当はsudoを使いたくなかったけど。

Rのアンインストール

homebrew使ってると忘れがちだが、
パッケージからインストールしたRをアンインストールするには
以下のようにする。
もしかしたら、最新版を使いたかったのかも知れない。

rm -rf /Library/Frameworks/R.framework /Applications/R.app \
/usr/bin/R /usr/bin/Rscript

homebrewでのRのインストールは以下、簡単。

brew tap homebrew/science
brew install R

md5sumの確認

非常に基本的なことなのだけど
md5値だけを与えられたとき、タブ区切りなどにして躓いたので。

$ md5sum -c md5sum_filename.txt

このとき、md5sum値とファイル名の間は"\ \ "で区切られている。
(半角スペース2つ)

ちなみにmd5sumを使う環境はRedhat系を前提にしている。
調べるとDebian系でもある様子。
しかし、MacOSXにあるのはmd5で、"-c"オプションはない。
同様のことをやろうと思ったらどうしたらいいのだろう?

どうやら、Homebrewのmd5sha1sumをインストールするのが良いようだ。

$ brew install md5sha1sum

あとは、Linuxと同様にできる。