GNU datamash を使って転置

バイオインフォで扱うデータってcolumnが多い場合が多々あります。 例えば、10X Genomicsの公開データ(bam)をsamtoolsで見てみると。 kimoton@DESKTOP-BL78EM7:~$ samtools view http://s3-us-west-2.amazonaws.com/10x.files/samples/cell-exp/2.1.0/pbmc…

R 3.5.0 へのアップデート(PPA利用)

きっかけ 最近のRパッケージ(今回はsinglecell解析に使うパッケージ)がR 3.5.0でないと動かない。。 Bioconductor - SingleCellExperiment (development version) R 3.5.0入れたdocker imageを動かそうとも考えたけど、データのマウントとか面倒そう。。 W…

googledrive内のファイルをRから操作 - googledrive

An Interface to Google Drive • googledriveを使ってみた 特徴 ほとんどの関数はdrive_で始まっているおかげでgoogledriveパッケージの関数を自動補完で呼び出しやすい。 find, ls, mv, cp, mkdir, rmといったUINIXコマンドを打つようにgoogleドライブを操…

WSL (Windows Subsystem for Linux) で文字化け

An Interface to Google Drive • googledriveこれ使ってgoogledriveをコマンドからいじれるようにしたかったのにそもそもWSL内にgoogle-chromeが入ってなかった。 google-chromeをインストール google-chromeをインストールします。 署名鍵のダウンロード、…

クラスタの特徴を知る - radarchart

R

クラスタリングを行ったあと、各クラスタがどんな特徴を持っているのか知りたいときはレーダーチャートを書いたりする。 radarchart関数を使う radarchart(df)でとりあえずのレーダーチャートはかける。ここで与えるデータフレームは df The data frame to b…

非線形クラスタリング k-means

R

k-meansの必要なところだけ。 k-meansとは 非階層的クラスタリング手法の1つ。 要するに何をしているのか k個のクラスターの初期位置を決める。 各データをk個のクラスターとの距離を求め、最も近い位置のクラスターに分類。 形成されたクラスターの中心を…

SAM format

SAM format リードをマッピングした結果の情報を示すのにSequence Alignment/Map (SAM) formatという形式がよく使われる。 SAM format は@から始まるheader行と、それに続く以下の11列から構成されるアライメントセクションによって構成される。 アライメン…

[tcl] grab failed: window not viewable.

R

RのパッケージをCRANから落とす際、 --- このセッションで使うために、CRAN のミラーサイトを選んでください --- structure(.External(.C_dotTclObjv, objv), class = "tclObj") でエラー: [tcl] grab failed: window not viewable. こんなメッセージが出る…

共有ライブラリ

Rの標準ライブラリ(pngなど)がないと怒られた。 入れようとしたら、 install.packages("png") ・ ・ ・ ** testing if installed package can be loaded Error: package or namespace load failed for ‘png’ in dyn.load(file, DLLpath = DLLpath, ...): 共…

アセンブリの良し悪しの指標:N50、L50、NG50

出会い 次世代シーケンサーのアセンブル結果を示す指標として、N50というものがあることを、つい最近知った。まずい。 以下のように使われる。 PacBio(RSII)にBioNano社が開発したIrys(DNA上の特定の配列に蛍光標識をしてスキャナーで蛍光を読み取る)に…

`__pycache__` の役割

__pycache__ というディレクトリがそろそろ気になってきた。 なんか気づいたらできてる。 なんなんだこれは。 以下で議論されていた。 python 3.x - What is __pycache__? - Stack Overflow 要点をまとめると。 ファイルをインポートした際にできる python c…

anacondaでR

Rのパッケージを入れる際、依存関係の問題でエラーが起きるせいでpipやinstall.packages()を用いてインストールできないことが多々ある。 CRANに登録されているRパッケージをインストールするには、以下のように明示的に示すと良い。 $ R > install.packages…

SeqPrep - overlap除去、アダプター配列の除去

SeqPrep github.com SeqPrepはPandaSeqとは違うアルゴリズムのoverlapをマージするツール。 https://github.com/jstjohn/SeqPrep TechSupport@illumina.comからイルミナにアダプター配列のリストをもらえたりするらしい。 アダプター配列は自分でリード見て…

fastp - fastqファイルの操作

https://github.com/OpenGene/fastp fastp A tool designed to provide fast all-in-one preprocessing for FastQ files. This tool is developed in C++ with multithreading supported to afford high performance. Fastqファイルの前処理全てが素早く実行…

reshape::melt を用いたデータ整形

R

reshape2 ggplot2はRでプロットする際に頻繁に用いられる。 しかし、Excelのデータをcsvにしてそのまま読み込んでggplot2に渡したところで、データの形を勝手に判断してくれるわけがない。ggplotはわがままなので、データの整形という処理が必要だ。 いって…

pandaseq の使い方

前の記事で紹介したtoolの1つ。pandaseq を使ってみる。 github.com インストールは簡単。 まず git clone https://github.com/neufeld/pandaseq.git 中に入って sudo apt-get install build-essential libtool automake zlib1g-dev libbz2-dev pkg-config .…

single-end read, paired-end readsのおはなし

きっかけ paired-endのサンプルのoverlapを取り除く方法を検討してたらいろいろ整理されてる記事に巡り合えたので和訳しつつ理解を深める single-end, paired-end fastqファイルには、シーケンシングのされ方で2種類ある。UCSCなんかからfastqをダウンロード…

bamファイルがpaired end かsingle end なのかを調べる

Rsamtools を使った判定法 > packageVersion("Rsamtools") [1] ‘1.20.5’ library(Rsamtools) # ファイルのPATHを指定 fl <- system.file("extdata", "ex1.bam", package="Rsamtools") > quickBamFlagSummary(fl) group | nb of | nb of | mean / max of | re…

Matplotlib subplot の仕方

グラフを並べて表示したいとき、 2つの方法がある。ほかにもあるかもだけど2つの方法を知っている。 matplotlib.pyplot.subplotsを使う fig, axes = plt.subplots(figsize=(10, 10), nrows=2, ncols=4, subplot_kw={'adjustable': 'box-forced'}) axes には …

Vagrantでのssh接続

ssh 接続にはパスワード認証方式と、公開鍵認証の二通りの接続方法がある。 公開鍵認証 vagrantでは、ゲストOSの初回起動時にホストOS側の鍵情報を自動で変更し、ゲストOSと暗号の再調整を行っている。 vagrant ssh は vagrant ssh-config で置換後に使う秘…

Selenium備忘録

今友達からbed365 というサイのスクレイピングを任されている。ブックメーカーで有名なサイトだ。ここのデータを集めて解析したいらしい。 スクレイピングでは基本ChromeDriverを使って行っているのだが、久しぶりに動かしたら、以下のようなエラーが度々表…

IPython データサイエンスクックブック memo (2)

2.4 Workflow using git branch git stash commitしていない変更の一時退避 git stash pop 変更を戻す 2.5 High reproductivce, interactive computing ファイルの命名規則、ディレクトリ構造を一貫性のあるものにする。 全てのソフトウェアスタックの正確な…

IPython データサイエンスクックブック memo (1)

1.1 Introduction %%writefile IPython magicコマンド。テキストファイルの作製。 インラインの数式は$...$ を使って記述。 独立した数式は $$...$$ を使って記述。 HTML() 、SVG() 、YouTubeVideo() nbviewerを使ってIPythonで生成したJSONテキストを公開可…

日常 Part2

修士をとるか、就職か 修士に行くか、就職してしまうか。 修士に行く場合、今の研究をあと二年続ける。 就職する場合、今のインターン先に就職する。二年もあれば、多分転職する。 理系なら誰しも少しは考えるだろう。本来院試前に考えることだ。 院試を受け…

日常 Part1

30分前に気づいた。今日はもう30分しかないということを。 毎日更新するんだ。今度こそ。 最近はOreillyの本をひたすら読み進めている。 いまは下記の2冊をソースコードとともに楽しんでいる。 Pythonによるデータ分析入門 ―NumPy、pandasを使ったデータ処理…

Twitterを始めた。

恥ずかしい。 なにが恥ずかしいかって、Twitterをいまさら始めたことじゃない。 これはアカウントを分けただけで、今Twitterを始めたわけじゃない。 過去の記事が恥ずかしい。 だいぶ消した。大幅に消した。 心機一転、 new kimoton で頑張ろう。年も明けた…

repr()、str()、eval() のお話

Biopython Tutorial and Cookbookの和訳を行ってる最中。 >>> from Bio import SeqIO >>> for seq_record in SeqIO.parse("ls_orchid.gbk", "genbank"): ... print(repr(seq_record.seq)) Seq('CGTAACAAGGTTTCCGTAGGTGAACCTGCGGAAGGATCATTGATGAGACCGTGG...CG…

ベン図の上限

R

Rでベン図を描く。 VennDiagramというライブラリが使いやすくて視覚的にもわかりやすかった。 今回6つのデータセットをベン図にplotする必要があったので、6つのベン図ってなんだよと思いつつ、実行してみたら、普通にエラーが出た。VennDiagramの上限は5つ…

nCr をpython で書くと。。

つまりn個からr個取り出す組み合わせというやつ。 これをPythonで書きたい。 そんなときは高階関数reduceを使う。 import operator as op def ncr(n,r): r = min(n-r,r) if r == 0: return 1 num_over = reduce(op.mul, xrange(n, n - r, -1)) num_under = r…

MkDocs 使ってみた。

昨日任された業務を紹介しよう。 Web上でパワポの内容をWebページで見れるようにして! というものだ。 こんなとき、MkDocsがとても便利。 MkDocsの公式に飛ぶ。 サイト自体がMkDocsで作られてる。 こんなページがMarkdownでお手軽に作れるのがMkDocs。 いち…