いろいろ倉庫

KNIME、EXCEL、R、Pythonなどの備忘録

R

【R】遺伝子発現データのPCAとかヒートマップとかしたい

・お題:遺伝子発現データセットを入手した。遺伝子発現データのパターンを俯瞰するために、PCAで次元削減してサンプル間の関係を可視化したり、ヒートマップを作成して遺伝子発現のパターンを可視化したい。 ・今回題材にしたのは、GSE269178という遺伝子発…

【R】ggplot2でプレートのヒートマップを作る

・お題:ggplot2でプレートのヒートマップを作りたい。 # ライブラリ読み込み library(tidyverse) # ggplot2を含むパッケージ集library(ggsci) # カラーパレットのパッケージ library(magrittr) # パイプなど使いやすくする # データフレーム作成 df_96well …

【R】2層グループのデータを図示したい

・お題:グループ、サブグループになっているデータを、箱ひげ図でうまいこと図示したい。 ・遺伝子発現データなどでよく見かけるので、やってみる。 # ライブラリ読み込み library(tidyverse)library(magrittr) # データセット作成 df <- data.frame( case_…

【R】ggplot2で棒グラフ+個別値+dodge

・お題:ggplot2で棒グラフ+個別値+dodgeしたい。 # パッケージ読み込み。 library(tidyverse)library(ggsci) # データフレーム作る。 df <- data.frame( Compound = rep(c("A", "B", "C"), each = 12), Replicate = rep(c(1, 2, 3), 12), Concentration =…

【R】ggplot2で平均値の棒グラフ+個別値プロット

・お題:ggplot2で平均値の棒グラフ+個別値プロットしたい。 # パッケージ読み込み library(tidyverse) # ggplot2とその他便利なライブラリのセット # データセットを作る。 df <- data.frame( s_1 = rnorm(n = 20,mean = 10,sd = 1), s_2 = rnorm(n = 20,m…

【R】良い感じの色のグラフを作成したい

・お題:良い感じのカラーパレットを提供するパッケージggsciを見つけたので、使ってみたい。 ・ggsciの公式サイトはこちら。いろいろなジャーナルで使われがちな色合いをカラーパレットとして使えるらしい。 Scientific Journal and Sci-Fi Themed Color Pa…

【R】重複を削除したい

・お題:ベクトルの要素の重複を削除したり、data.frameの行の重複を削除する方法をいつも忘れるので、メモしておきたい。 # ライブラリ読み込み library(tidyverse) # ベクトルの要素の重複を何とかする。 # ベクトル作成 test <- c("A", "A", "A", "B", "B…

【R】ggplot2でdata.frameからdotplot風のグラフを描きたい

・お題:ggplot2でdata.frameからclusterprofilerのdotplot風のグラフを描きたい。 # データフレームを作成df <- data.frame( names = c("Taro", "Jiro", "Saburo", "Shiro", "Goro"), ages = c(25, 30, 22, 35, 28), weights = c(68, 55, 60, 75, 50), heig…

【R】grepでベクトルから要素を取り出したい

・お題:grepでベクトルから要素を取り出したい。 # 適当にベクトル作る。 test <- c("A1", "B1", "C2", "D2") # 1で終わるのを釣ってくる。 grep(x = test, pattern = "*1") [1] 1 2 test[grep(x = test, pattern = "*1")] [1] "A1" "B1" # 1で終わらないの…

【R】tidygraphとggraphでネットワークのグラフを描いてみたい

・お題:Rパッケージのigraphは便利だけれど、少しハンドリングしにくい。tidygraphというパッケージだと、dplyrみたいにハンドリングできるらしい。試してみたい。 # パッケージを読み込む。 library(tidyverse)library(tidygraph)library(ggraph) # エッジ…

【R】オブジェクト名からオブジェクトの中身を取得したい。

・お題:オブジェクト名を与えて、オブジェクトの中身を取得したい。 ・get関数を使う。 # 適当にdata.frameを作る。 df <- data.frame( A = c("a","b", "c"), B = c(1,2,3) ) # オブジェクト名を指定する。 test <- "df" # get関数でとって来る。 get(test)…

【R】関数の機能をちょっと広げたい

・お題:2つの数字を足し算する関数がある。これをもとに、3つ以上の数字を足し算する関数を作りたい。 ・足し算関数を定義する。 func_add <- function(a, b){ return(a + b) } # 試してみる func_add(3, 4) [1] 7 ・これを3つ以上の引数に対して適用できる…

【R】遺伝子のIDを確認したい

・お題:遺伝子のIDにはいろいろな種類がある。手元にある遺伝子リストのIDがなんのkeytypeか判別つかないないので、早見表を作っておきたい。 # パッケージ読み込み library(tidyverse)library(clusterProfiler)library(org.Hs.eg.db) # keyの一覧を見てみ…

【R】列名のある空のdata.frameを作りたい

・お題:列名のある空のdata.frameを作りたい。 ・所用があり、0行n列のdata.frameを作りたくなった。as.numeric()などで何とかなるらしい。 library(tidyverse) df <- data.frame(test1 = as.numeric(), test2 = as.numeric(), test3 = as.numeric()) df [1…

【R】data.frameの特定の行・列の値を代入したい

・お題:data.frameの特定の行・列の値を代入したい。 ・適当にdata.frameを作成する。 library(tidyverse) df <- matrix(c(1:96), nrow = 8, ncol = 12) %>% as.data.frame() df ・baseでやってみる。特定のセルに代入。 df[3,4] <- 100df ・インデックスの…

【R】excelファイルのすべてのシートを読み込んでひとつにまとめたい

・お題:Rでexcelファイルから表を読み込んでdata.frameを作成できる。今回は、シートを全部読み込んで一つのオブジェクトにまとめたい。 # ライブラリを読み込んで、ファイル名を指定する。ファイルはカレントディレクトリに保存しておく。 library(tidyver…

【R】dplyrのmutateで変数を列名に使いたい

・お題:dplyrのmutate関数で、data.frameに列を追加することができる。この際に列名に変数を使おうとするとうまくいかないので、何とかしたい。 # ライブラリを読み込んで、データフレームを作る。 library(tidyverse) df <- data.frame(A = c(1,2,3), B = …

【R】ggplot2でL4のグラフを描画したい

・お題:IC50を求めるのにdrcパッケージを用いてLL4でfittingした。通常はplotで図示するが、なんとなくggplot2で図示してみたい。 ・とりあえず、本題とは関係ないが、xlsxファイルからデータを読み込んで、(便宜上)IC50を算出させるところまでいく。今回…

【R】google colabでRを使いたい

・お題:google colabでRを使ってみたい。 ・以下のHPを参考にさせていただいた。詳しい内容に関しては、参照元HPを見て頂きたい。 hira-labo.com 以下は私用のメモ。 ・ google colabでノートブックを新規作成し、ローカルにダウンロード。 colab.research.…

【R】リストの使い方メモ

・お題:リストの使い方が分からないので、メモしておきたい。 ・リストは、形式の異なるデータを詰め込めるデータ構造のこと。使うたびにググっていたので、少しまとめたい。 ・とりあえずデータを作る。 > library(tidyverse) #Rを便利に使うパッケージ > …

【R】Heatmap.2のクラスタリング情報を扱ってみたい

・お題:遺伝子発現を比較する際に、ヒートマップというカラフルな図をheatmap.2を使って作ってみた。この図では階層型クラスタリングとセットで使われることが多い。図示するだけではなく、階層型クラスタリングの情報も扱ってみたい。 ・正確には、クラス…

【R】ドットプロットを作りたい

・お題:とあるデータをドットプロットで示したい。 ・ライブラリを読み込む。 > library(tidyverse)> library(kableExtra) #ぽりぽりできるグラフを作る ・データセットを作る。 > df <- + data.frame(+ GeneID = c("geneA", "geneB", "geneC"),+ test_rep1…

【R】出芽酵母のGO解析をしたかったのだけれど

・お題:Saccharomyces cerevisiaeの遺伝子のリストを入手したので、GO解析してみたい。 ・org.Sc.sgd.dbというアノテート用のパッケージが配布されているので、clusterprofilerのチュートリアルを参考にやればなんの問題もなくできる、と思っていた。 yulab…

【R】色のベクトルを作りたい

・お題:元ベクトルに対応するように色を振ったベクトルを作りたい。 ・やることは、元ベクトルをファクター化して、色のベクトルから要素をとって来るような感じ。 > ori <- c("1","1","2","3","3") #元ベクトルを設定 > iro <- c("red", "blue", "yellow")…

【R】アルファベットや月のベクトルを呼び出したい

・お題:piと言えば円周率が割り当てられているように、アルファベットや月名を呼び出したい。 ・Rにはもともと割り当てられている変数がある。アルファベットや月名は、以下が割り当てられているのでメモしておきたい。 > LETTERS #大文字アルファベット [1…

【R】data.frameの列名を綺麗にしたり集計したい

・お題:スプレッドシートで作った表をRにデータフレームとして読み込んだら、列名が変で扱いづらい。うまいこと修正したい。 ・janitorというパッケージを使う。正しいことは以下を参照いただきたい。インストールは割愛。 https://cran.r-project.org/web/…

【R】クリップボードから読み込んだりしたい

・お題:クリップボードのデータを読み込んだり、クリップボードに結果を出力したりしたい。 ・EXCELなどの表をクリップボードにコピーした。 ・クリップボードをdata.frameとして読み込むには、read.tableで'clipboard'を指定すれば良い。> test1 <- read.t…

【R】複数項目含まれている列をうまいこと分けたい

・お題:データフレームを入手したところ、ある列の項目が一つの場合だけではなく、複数の項目をカンマで区切って繋げている場合があった。行を複製して要素をばらけさせたい。 ・何かのライブラリの関数でスパッとうまくような気もするが、該当するライブラ…

【R】NCBIからデータをとってきたい

・お題:NCBIからデータをとってきたい。Rで自動化できると嬉しい。 ・Rを使ってNCBIからデータをとって来るライブラリを調べてみると、rentrezというライブラリを見つけた。正しいことはそちらをご覧いただきたい。 cran.r-project.org ・あまりにアクセス…

【R】wikipathwayでエンリッチ解析してみたい。

・お題:WikiPathwaysという生物学的パスウェイのデータベースがあるらしい。エンリッチ解析やパスウェイの図示もできるらしい。RからCytoscapeを介して使ってみたい。 ・なお、私は素人なので、ちゃんとしたことはちゃんとした人に聞いていただきたい。 ・W…