ほぼ中立ブログ

少しだけ趣味に偏った雑記ブログ

2019-01-01から1年間の記事一覧

Pythonのfileinputでフィルタとかファイルの書き換えとか

Pythonでファイルの読み込みや書き込みをする際にはopen関数を使うのが基本ですが、下に挙げるような少し複雑な操作をしたい場合には頭を抱えることになります。 標準入力からも読み込みたい、ただし指定したときにはファイルからも読み込んでほしい。 ファ…

全自動でシングルコピー遺伝子の連結系統樹推定(OrthoFinder, MAFFT, trimAL, IQ-TREE)

オーソログ推定プログラムのOrthoFinderですが、便利なことにオーソログ推定の結果予測されたシングルコピー遺伝子の情報を個別に抽出してディレクトリにまとめてくれます。 シングルコピー遺伝子の系統樹は種の系統関係を反映している可能性が高いと考えら…

Pythonでディレクトリを一時的に移動して元のディレクトリに戻る

Pythonスクリプト内で外部プログラムを呼び出して解析を実行することが多々あるのですが、プログラムの中には出力先を指定するオプションがなくカレントディレクトリに結果を出力することを想定しているものがあります。 条件が一つだけの場合はそれで良いの…

Guakeがexitでフリーズするので解決策と代替アプリを探した件

キーボードからさっと簡単に呼び出せるドロップダウン型のターミナルGuakeを愛用していたのですが、Ubuntu 18.04 LTSにしてから、exitで端末を閉じようとするとフリーズするようになってしまいました。 まぁ、Guakeの特性上基本的に端末は開きっぱなしでOKな…

Pythonでディレクトリ下のファイルを再帰的にリネームして通し番号を振る

pythonでディレクトリ(フォルダ)下のファイルを一括で変更して通し番号を振るスクリプトを作ったので備忘録を兼ねてまとめます。 Windowsでも動くような気はしますが、テストした環境はUbuntu 18.04 LTSです。 目標 スクリプト 目標 以下のような構成のフォ…

Newick形式で系統樹の樹形が同じか確かめる

複数のNewick形式の系統樹から樹形が同じものを抽出する必要に駆られたので備忘録を兼ねたまとめです。 当たり前ですが、 ((A,B),(C,D)); ((C,D),(A,B)); の2つのNewick形式は同じ樹形を表しており、 ((A,B),(C,D)) ((A,C),(B,D)); の2つのNewick形式は異な…

UbuntuにNeovimをインストールする

この度VimからNeovimに乗り換えたので、備忘録を兼ねてそのインストール手順をまとめます。環境はUbuntu 18.04 LTSです。 正直な所VimとNeovimとの違いは分かっていませんし、プラグインの導入等一通りの設定が終わった今でも、Vimとの使用感の違いはないの…

Windows10を高速化する3つの方法

どうにもパソコンの動作がモッサリとしていたので軽くする方法を調べてみました。 こうした試みは徒労に終わる傾向が強いような印象があったのですが、珍しく満足するレベルで高速化できましたので備忘録を兼ねてまとめます。 割と釣りタイトルな気がします…

CUIファイルマネージャrangerの設定ファイルについて

rangerはターミナルから起動できるvimライクなキーバインドで操作できるCUIのファイラーです。 ターミナル内で使えるファイラーは他にも試したのですが操作が良く分からず、デフォルトの状態でも十分使いやすいrangerに落ち着きました。全てとは言いませんが…

ブログが月間3000PVを突破したので一応分析してみる

あまりブログの運営に関する記事は作らずに淡々と続けていこうかなと思っていたんですが、やっぱり嬉しかったですしまあ良いかなーってことでダラダラと書き綴ってみます。 ブログ4ヶ月目にしてついに、1ヶ月のPVが3000を超えましたー。いやー、こんなにたく…

BiopythonによるオンラインのBLAST実行

Biopythonを使って、与えられたFASTAファイルの配列データをクエリーとしてオンラインのBLASTを実行するスクリプトを作成したので、備忘録を兼ねてまとめます。 公式のチュートリアルを参考に作りましたので詳しくはそちらをご覧ください。 コード 補足 その…

BiopythonでFASTA形式をPhylip形式に変換する

解析に使うプログラムの中には、FASTA形式の配列ファイルではなくPhylip形式のものを要求するものがあります。今回はそのような事情でFASTA形式のデータをPhylip形式に変換する、ちょっとしたスクリプトを書いたので備忘録を兼ねてまとめます。 Phylip形式に…

ループカウンタに小数を使ったらハマった(Python)

入門書で読んだきり忘れていた問題に、この度出くわしたので備忘録を兼ねてまとめておこうと思います。 以下のようなPythonのコードを書いていました。 start, end, delta = 0.1, 0.3, 0.1 i = start while i <= end: i += delta print(i) 自分としては3回値…

Biopythonで入力ファイルがFASTA形式か調べる

与えられた配列ファイルをプログラムで処理する際に、ファイルのフォーマットを調べておきたいという場合がたまにあります。拡張子で識別するのが簡単で手っ取り早いですが、FASTAファイルのようによく使われる拡張子が複数種類あるものだと、識別が若干面倒…