kuroの覚え書き

96の個人的覚え書き

Python

matplotlibで自動的に振られる色が10色しか無い点を変更する

marplotlibは複数の要素をグラフ表示すると、自動的に色を分けてくれるわけだが、これが10色しか用意されていない。まあ実際10本以上折れ線が重なっていたらかなり見にくいことになるのは確かなのだが、それでもたくさんの色で表現したいこともあるわけで。…

PythonでGUIアプリを作る

プログラミングの練習も兼ねてPythonでゲームを作ってみる。 まずはtkinterの使い方練習。 import tkinter #tkinterモジュールをインポート root = tkinter.Tk() # ウィンドウの部品を作る root.geometry("400x300") #ウィンドウのサイズを決める root.title…

clusteringだけmatplotlibで

ヒートマップの描画ははじめてseabornを使ってみたのだが、噂通り細かい調節は難しい。 今回系統樹の枝の長さを入れたかったのだが、結局方法にたどり着けなかったので、系統樹の部分だけmatplotlibで描いてみる。 枝が自動で色がついていたり、まだ改良の余…

ClusteringとHeatmap

RNAseqのデータ解析で、とりあえずやっておくことといえば、遺伝子発現プロファイルをクラスタリングしてヒートマップを描くということだろうか。 R使いならRでやるんだろうけど、Rはあまり良く知らないため、これまで MeVを使ってきた。最近のバージョンで…

統計的検定をpythonで行う〜Tukey編

Student's T testはexcelでも特に難しくない。標準関数でできるからね。それに比べて多重検定はアドインとか手計算とか結構面倒なので、これをwebアプリでチョチョイとできるとすごくいい。というわけでまずはexcelで実施した場合。 https://www.amazon.co.j…

統計的検定をpythonで行う〜Student's T test編

統計計算をexcel以外でやる。よく使われるのはRなんだがRはいまいち知らないので、pythonでやれないものかと。まあやれるでしょう。いつものようによく使う機能はまとめてWEBアプリにしてやろう。 このグラフデータについてexcelとpythonの比較をしてみる。 …

PCA plotをpythonで行うWEBアプリ(ver2)

さて、さっきのアプリからPCAだけを抜き出してちょっと改変してみる。主成分分析を Python で理解する - Qiita こちらのページを参考にさせてもらう。ポイントはnumpyで数値データを抜き出していた点をpandasに換えることでテキストも含んだcsvを入り口にで…

PCAやMDS plotをpythonで行うWEBアプリ(ver1)

以前にもpythonでPCAを実施するスクリプトを書いてみていたが、webアプリ版を作ってみた。まずは低機能にとりあえず数値だけのcsvファイルを投げるとプロットを描かせるだけのものからPCA by Pythonこんな感じ。Flaskのviewsはこんなふうで。 /flask_root_fo…

SQLiteのINSERTをSQLAlchemyで書く

かなり久しぶりにSQLiteのデータを追加しようと以前に作成したスクリプトを持ち出してきて実行してみたところ sqlalchemy.exc.ArgumentError: Textual SQL expression 'rnaseq_temp' should be explicitly declared as text('rnaseq_temp')こんなエラーが出…

CLUSTALW

これまでCLUSTALWによるクラスタリングから系統樹作成はDDBJのサービスを主に使っていたのだけれど、系統樹を描く部分はNjplotというかなり古いソフトをMac上で利用していた。これがいつまで使えるかわからないし、クラスタリングからの連携も面倒なので、一…

cDNA FASTAファイルから最長ORFを抽出し、5'UTR/CDS/3'UTRに分割してそれぞれのFASTAファイルを作成する

cDNA FASTAファイルから最長のORFを抽出し、5UTR,CDS,3UTRに分割して保存する。 Multi FASTA にも対応する。 #fasta_utr.py import sys, os, re from Bio import SeqIO from Bio.Alphabet import IUPAC from Bio.Seq import Seq fasta_file = sys.argv[1] …

Anacondaの再インストールで躓く

pyenvで仮想化 $ git clone https://github.com/yyuu/pyenv.git ~/.pyenv $ echo 'export PYENV_ROOT="$HOME/.pyenv"' >> ~/.bashrc $ echo 'export PATH="$PYENV_ROOT/bin:$PATH"' >> ~/.bashrc $ echo 'eval "$(pyenv init -)"' >> ~/.bashrc $ source ~/.…

pythonでseq data

相変わらずいろいろ画策中。 やっぱり何が面倒ってab1ファイルを開いて2つ重なったピークを分離するところなわけで。 ピークコールの自動化ができるととても楽ちんになる。BiopythonモジュールでもSeqデータを見られるらしい。 from Bio import SeqIO from B…

CRISPRの編集を調べるプログラム

以前、CRISPRによって編集された遺伝子配列を解析するプログラムを書いたが、100%マッチするときしか検出できないのは不便だな、ということで、アライメントを取るツールを利用できないだろうかと考え中。pairwise2 | BioPython の pairwise2 ライブラリー…

ディープラーニングちょっとずつ

なかなか先に進まないが、とりあえずちょとでもいじってみるか。 jupyter notebookの使い方を確かめながらmnistのデータを使った練習をやってみる。いろいろわからないまま言われるままに入力し、その出力をまずは眺めてみる。

VNCとpyenv

deep learning machineの構成をあれこれいじっているうちに動作がおかしくなってきたので、一旦リセットしてOSインストールからやり直すことにした。ここまでの手順ではCentOS7をデフォルトの最小構成でインストール ネットワーク設定 一般ユーザー追加 gnom…

Raspberry piで温度ロガー

ラズパイを温度監視用ロガーとして使えないかなと。ここまでラズパイはマイクロLinuxボックスとしてしか使っておらず、IoT的な電子工作はやっていない。 で、どうなんよ、と今更ながらにIO関係を調べてみたところ、AD変換とかはない。 抵抗とコンデンサを使…

Deep learning マシンを変更

手持ちのサーバの構成を考え、Deep learningの環境テストを行うノードをPRIMERGY RX200S6に移した。手順は クラスタから切り離す。 一般ユーザを作成。 グラボを移し替え。 NVIDIAのドライバインストール。 CUDAのインストール。 pyenvインストール。 anacon…

multi FASTA (DNA)からmulti FASTA (Amino Acid)を機械的に作成する(その2)

ちょっと調べたらいけそうな気がしてきた。Biopythonを使うといろいろ簡単にできる模様。まずはmultifastaを開いて配列を順番に読み込む import sys from Bio import SeqIO fasta_file = sys.argv[1] for record in SeqIO.parse(fasta_file, 'fasta'): ids =…

pythonでABIのシークエンスデータをゴニョゴニョする

シークエンスファイルとかfastaファイルとかMacのApEとかで開いてどうにかするのがだんだん億劫になってきた。 pythonでどうにかあんなことやこんなことができないかと調査中abifpy · PyPIまあこんなモジュールでも使えばどうにかなりそうな感じ。 引き続き…

文字列とQRコードを並べて合体した画像を作成する。

テプラには文字列からQRコードを生成して、テープに印字する機能があるのだが、このQRコード生成と文字情報の印字の入力は別系統な操作が必要で結構面倒臭い。 なので、QRコードと文字情報をまとめて画像にしてしまって画像挿入機能一操作だけで完結できるよ…

QRコードをpythonで作る(その2)

QRコード生成をFlaskのwebアプリから行ってみる。 2つのパターンを想定。 前もってデータベースのIDごとのQRコードを生成。 データベースの1エントリーからQRコードを生成。 from functools import wraps from flask import request, redirect, url_for, ren…

QRコードをpythonで作る

ラボの物品や実験植物の管理をやりたい。 サーバにデータを置いておいて、WEBアプリで管理できるようにし、物品をQRコードで紐づけておく。物品にそのQRコードを貼り付けておいて、スマホカメラで見ると、WEBに飛んでその場でデータを編集、statusを変更など…

富士通PRIMERGY RX300S7で深層学習の学習環境を構築してみる(2)

続き次にanacondaを入れる 最初普通にanacondaのサイトからインストーラをダウンロードしてきて $ bash Anaconda3-5.3.1-Linux-x86_64.shとインストールしてtensorflowをpipで入れて・・・とやってみたのだが、glibcのバージョンがCentOS7では2.17、tensorfl…

PCAやMDS plotをpythonで行う

これまでPCAやMDSをやりたいときはRを使っていた。しかしRはどうも肌に合わない。すぐ忘れてしまう。 ということでここはやはりPythonですね、ってことでどうやるのか調べてみた。【python】pca、mds、nmds、tsneとmatplotlibでデータの可視化をしてみる - …

CRISPRで編集がかかったゲノムシークエンスを読むプログラム

CRISPRで編集がかかったと思われるT0サンプルのゲノムをシークエンスすると、変異は2本の染色体にランダムに起こるため、基本的にはヘテロとなってシークエンスデータの波形が2つ分重なって検出されることになるのは先日に書いたとおり。 これをパズルのよ…

塩基配列(文字列)のどこにリストに挙げた配列が位置しているかを示すプログラム

モチーフの抽出ができたらそれが一体どこにあるのか列記したい。 import re text = """GACTTTAGATGGCTTCTTCCTTTATAACCAATTGATATTGCATACTCTGATGAGATTTAT AATTAAAGAAGCAGAAACAAAAACAAGTAAAACAGAAACAATCAACACAGAGAAACCACC CCGAGAATATCTCCATTGGTTGGTGACTGATATCCC…

avconv (ffmpeg)でmp4ビデオを作成してwebに埋め込む

いやーはまったはまった。 ラズパイ3で作ったwebカメラアプリを3+に入れてやったところ、ほんの数ヶ月の間にソフトウェアの構成がかなり変わったらしく、いろいろ言うことを聞かない。 最後まで手こずったのはタイムラプスで撮った写真をパラパラ漫画的にビ…

塩基配列(文字列)からコンセンサス配列を抽出するプログラム

要するに文章からよく出てくる単語をピックアップしてカウントし、リストを作れれば良い。 辞書型を使って単語を数えるプログラムはpythonのプログラム例としてよく上がっているが、単語の区切りが明確でない遺伝子配列のような文字列から指定文字数の連続し…

Pythonの環境を一旦リセットする

どうもややこしくていけないのだが、systemに入っているpython は2.6とかなりふるい目。なので自前でpython3を入れて使いたいわけだが バージョンの使い分けにpyenvというものがある。更にはvirtualenvというものもある。 しかしよく考えると、バージョンを…