Juliaでパッケージの利用 & OhMyREPLでREPLの強化

パッケージ概要 再利用可能な関数などを集めたスクリプトファイルのことをモジュールと呼びます。 さらに、同系列のモジュールを集めたものをパッケージと呼びます。外部のツールの多くは、このパッケージという単位で公開されています。 そういえばこんなツ…

Rのtmpディレクトリ

R

とあるRのツールを実行した際、こんなエラーが出た。 Fatal error: cannot create 'R_TempDir' Rの一時ディレクトリが作れないと。 なるほど。なんでだ。 R_TempDirという環境変数でディレクトリが設定されているのかと思って下記を打つも登録されていない。…

scRNA解析に有用 - SingleCellExperiment クラス

SingleCellExperimentクラス single cell RNA (scRNA-seq) 解析のためのS4 Classesです。 様々なscRNA-seq解析のパッケージで採用されており、scRNA-seq解析に有用なデータを保持しながら解析を進めることができます。 Bioconductor Bioconductor - SingleCe…

Julianへの道② - 多層ディスパッチ

多層ディスパッチ 多層ディスパッチとは、複数バージョンを持ち、そのバージョンが引数によって区別されるような関数のことを指すらしい。 Python2.4で実装されたmmモジュール内のmultithred関数を参考に、多層ディスパッチの実装について理解を試みた。 単…

遺伝子突然変異のお話とその種類

なんかただのエンジニアみたいなブログになってきたため、たまには生物学的なお話を。 遺伝子突然変異とは 呼んで字の如く、遺伝子上の塩基配列が変化することを指す。 生物学をあまり知らない人からは、単に遺伝子変異と呼ばれやすいかもしれない。 核・ミ…

Julianへの道①

また関係のないことに手を伸ばしてしまう。。 japan.techrepublic.com 「C」言語のスピードと「Python」の使いやすさ、「Ruby」の動的型付け、「MatLab」の強力な数学的能力、「R」言語の優れた統計機能の融合を目指した 謳い文句がかっこいい。。 インスト…

日本語フォントが使えるTeX Live環境の構築

CentOS7に TeX Live 2016 をインストール TeX Liveとは TeX Live は TeX のディストリビューションです. TeX の超巨大な集大成ともいえるもので,現在では国際的に最も普及している最新の TeX ディストリビューションです. TeX Live - TeX Wiki 超巨大な集…

FASTQファイル - 塩基配列を格納するためのフォーマット

お疲れ様です。9月です。寒いです。 本日はバイオインフォマティクスの基礎の基礎。 FASTQファイルについて見ていきましょう。 ショートリードを生成するシーケンサーだと、だいだい <~200 bpの塩基配列を取得できます。 大抵の場合、シーケンサから出力され…

EMBOSSでアライメント

アライメント。 要するに配列を比較し、並べる操作を指します。 遺伝子の発現量を測定したいときなど、遺伝子解析においてはアライメントを必要とする場面が多々登場します。 配列の類似度を表す基準は複数あり、その計算方法も複数あるため、いろんなアライ…

NCBI EntrezからFastaファイルをダウンロード

NCBI Entrez は、30以上もの生物学的な目的で作成されたデータベースに対する統合的なテキストベースの検索、情報抽出システムです。 BiopythonパッケージのBio.Entrezモジュールを使えば、このシステムをpythonから手軽に使えちゃいます。 ちなみに、Bio.En…

Windowsでメモリ計測

WindowでもLinuxのpsコマンドみたいにメモリを監視したい。 以下を参考にした。 takigawa401.hatenablog.com chkmmr.batというバッチファイルを作成する。 @echo off :label01 echo %date% %time% tasklist /fi "imagename eq python.exe" ping localhost -n…

chip-seqを理解する

ChIP-seqとは Chromatin Immuno Precipitaton の略。 抗原抗体反応を利用して、抗原タンパク質が結合しているクロマチン構造を免疫沈降させ、クロマチン内に含まれるDNAを濃縮する手法。 ヒストンや転写因子に対して、それらを認識する抗体を取ってくる。 ゲ…

R Notebookチュートリアル

以前、jupyter notebookでRのカーネルを使用する方法をご紹介した。 www.kimoton.com そこでは、R markdownのがイイヨ!みたいに終わらせた気がする。 しかし、Rmarkdownは確かにとっても便利な代物なのだが、毎回毎回全部のコードを実行しなければレポート…

JackStraw Plot (QQ-plot) を理解する

以前紹介した(Seuratを駆使する会 ① - ばいばいバイオ) Seuratというsingle cell RNA-seq解析のパッケージの中に、JackStraw Plotというものがある。 single cell RNA-seq解析は、 細胞ごとに遺伝子発現パターンを見る。 その発現パターンでクラスタリング…

jupyter notebook で R

jupyter notebook で Rを使う。 IPython notebook から Jupyter notebookになった所以として、Python以外のカーネルに対応したからだという。 ただデフォルトではpythonしか使えないではないか。 ということで使えるようにしてみた。 Requirements Jupyter n…

ipython布教活動

細かいことは気にせず、 ipythonを使うべし。 IPython IPythonは、対話的コンピューティングと、並列コンピューティングを行うためのオープンソースプラットフォームです。 機能をご紹介しましょう。 補完機能 pythonインタプリタでTab補完機能を使うことが…

java をwget → alternativesで管理 (JDK 10のインストール)

JDK10が出たらしいですね。 最近知りました。 alternativesを使えば、javaのバージョン管理が簡単にできちゃいます。 ダウンロードも簡単にできちゃいます。 いちいち面倒ですよね。wgetで落としたいですよね。 ここを参考にしました。ダウンロード先のリン…

Docker hubにDockerfileがない!

メタゲノム解析で使うqiime2のDockerイメージをプルしたときのこと。 中身が気になってDockerfileを見に行った。 ところが、、 Dockerイメージがなかった。Docker hub上に、なかったのだ。 何言ってんの? つまりこういうこと。 通常、Docker hubにあがって…

綺麗なコードを書いて下さい。

と言われた。 そうか。これは綺麗なコードじゃないのか。 いいだろう従おう。 ほしい関数 リストを受け取り、偶数個ずつリストで返すジェネレータ関数。 以下みたいな挙動を示すreturn_even_listを実装したい。 list1 = [1, 2, 3, 4, 5, 6] for i in return_…

メモリの監視とインスタンスの決定

AWSやAzureに移行したい。 そんな時、インスタンスのスペックを決定する必要がある。 インスタンスのスペックを決定するには、 メモリサイズ CPU数 ストレージサイズ の3つがわかればよい。 以下のようなスクリプトを使えば、実行しているプロセスに関するps…

ansiblerへの道 - sshログインできるDocker コンテナを立てる -

ansiblerになりたい、、!! ansibleというよりdockerの記事です。ご容赦ください。 きっかけ 巷にあふれているansibleに関する文献は、大抵Vagrantを使って仮想マシンを立てている。 しかし、Vagrantはとっても重い。 マシンの作成にも、起動にもとっても時…

$500を手にしたいKagglerへ

KaggleのKernelには先日からお世話になっている訳ですけども。 いっつもね。気になってたんですよ。 !! ついにクリックしてしまいましたよ。 これはいったいなんなのか。 どうやらKaggleでは、毎週、過去14日間に公開されたKaggle Datasetsを使用しているK…

Kaggle入門1-②

Kaggleを制するにはKernelを制すべし。って誰かが言っていたので、適当なKernelを動かしてみることにしました。 www.kimoton.com の続きです。 前回までのあらすじ。 データの前処理(Imputation)を行った後、 様々な側面からデータを可視化した結果、性別…

Kaggle入門1-①

さぁやって参りました。 Kaggle入門編第一回目。 Kaggleを制するにはKernelを制すべし。って誰かが言っていたので、適当なKernelを動かしてみることにしました。 今回は、Samson Qian氏(きっとスゴイ人)のKernelである Titanic: Beginner's Guide with skl…

Seuratを駆使する会 ①

SeuratはシングルセルRNA解析で頻繁に使用されるRのパッケージです。 Seuratを用いたscRNA解析について、CCAによるbatch effect除去などを含めた手法を丁寧に解説します。

Github Flow × WIP PR開発フローを考えた。

きっかけ 開発フローが中途半端に定まってない。 社内で何か知識共有をしたかった WIPでプルリク出すとか、なんかかっこいい。 slideshipでスライド作ってみたかった。 スライド作った。 良かったら見てってくださいな。 slideship使って作ったけどもう使い…

Google で働きたい ②

R

から、Google's R Style Guideに従おうと思う。 前回の続きである。 bioinfo.hatenablog.com General Layout and Ordering If everyone uses the same general ordering, we'll be able to read and understand each other's scripts faster and more easily…

Google で働きたい ①

R

から、Google's R Style Guideに従おうと思う。 File Names File names should end in .R and, of course, be meaningful. ファイル名は.R にしましょう。 自分のRの師匠は.r使ってました。 彼はgoogle入れませんね。 Identifiers Don't use underscores ( _…

R markdown のご紹介

Rmarkdownとは Markdown記法をベースに、チャンクという形でRのコードを記述して評価・出力することができるモノ。 出力形式としてはPDF、 HTML、 Microsoft Word等、あらゆる出力に対応しています。 Airbnbでも使われているらしい。。 https://qiita.com/Ka…

`maximal number of DLLs reached...

simpleSingleCellライブラリを入れようとしたら。。 Error in dyn.load(file, DLLpath = DLLpath, ...) : unable to load shared object '~~~': `maximal number of DLLs reached... エラーがでた。 ダイナミックリンクライブラリ (Dynamic Link Library: DL…