TAG

Rベーシック

【Rデータ整理】行や列の抽出:subset

データフレームから、subsetを使って、特定の行や列を抽出する方法。 今回は、下記データ(Data)を使用。 > print(Data) ID Cohort Sex Age ADNC LBDSubtype 1 149 LBD M 83 Low BP 2 634 AD M 78 High DN 3 632 AD F 75 High BP 4 901 LBD M 74 Not TL 5 621 […]

【Rデータ整理】行の抽出:filter

データフレームから、dplyr::filter()を使って、特定の行を抽出する方法。 今回は、下記データ(Data)を使用。 > print(Data) ID Cohort Sex Age ADNC LBDSubtype 1 149 LBD M 83 Low BP 2 634 AD M 78 High DN 3 632 AD F 75 High BP 4 901 LBD M 74 Not T […]

【Rデータ整理】行の抽出:grep ✕ 正規表現

データフレームから、grepを使って、特定の行を抽出する方法。 今回は、下記データ(Data)を使用。 > print(Data) ID Cohort Sex Age ADNC LBDSubtype 1 149 LBD M 83 Low BP 2 634 AD M 78 High DN 3 632 AD F 75 High BP 4 901 LBD M 74 Not TL 5 621 AD […]

【Rベーシック】If 構文

if 構文、if else 構文、if else if 構文の覚書。 If 構文 iF 構文は、他の反復 構文と同じく、 if (条件){処理} で表す。   例1:rnorm の標準正規分布で出てきた数値が正の数だったら、”Greater than 1″ とプリントする。 “rnorm” は、正規分布の値から無作為に数値を抽出する関数。 […]

【Rベーシック】空ベクトル etc.を作る

データフレームの要素などにあてがう時は、空vectorなどを先に作っておき、そこに処理結果を書き込むようにする。 空のvectorやlistを作る場合は、 vector() 、data frameの場合は matrix() と data.frame() を使用して作成。 空ベクトル (Empty Vector) vector(mode = X, length = Y) mode は データ型 do […]

【Rベーシック】For ループ

For ループは「仕事を反復 (iterate) する」ループ機能の一つ。 for(条件){処理} で表す。 前回紹介した While ループと違うのは、()内に繰り返す回数が入る事。 For ループの書き方と While ループとの違い 例1:”Hello”とプリントする。 while ループだと、 # TRUEだったら"Hello"とプリントする。 while(TRUE […]

【Rベーシック】While ループ

while ループでは、ある条件式が与えられると、その条件式が偽になるまで処理を繰り返し続ける構文。 while(条件){処理} で表す。 Rではapplyファミリーで代用できるし、速度も遅いので、他の言語ほどは while loop を使わない。 でも、基本は知っておく必要がある。 永遠に繰り返す while ループ 例1:TRUEだったら”Hello”とプリントする # […]

【Rベーシック】リスト (List) を作る

リストは異なるデータ構造を複数個格納することができるデータ構造の事。 Vector, Matrix, DataFrameなども混ぜて格納できる。 リスト (List) を作る list は list() で作成する。 my_list <- list( v=c(1,2,3,4,5,6), v2=c("a","b","c"), m=matrix(1:6, ncol=2), df=data.fra […]

【Rベーシック】データフレーム (Data Frame) を作る

データフレーム (data frame) の作り方色々。 データフレーム (Data Frame) とは データフレームは list の2次元バージョン。 データサイエンスで最も多く使用される。 データフレームにはここのベクトルをまとめて2次元の表にする。 ここの vector は表の中の “列” になる。 それぞれの列は異なる型のデータを格納できるが、同じ列内は vect […]

【Rベーシック】行列 (Matrix) を作る

行列 (Matrix) の作り方。 行列 (Matrix) とは matrix は線形代数の行列と同じように、2次元配列に値を格納する。   Matrix を作る 行を指定する場合 matrix を作る時は、行列に再構成する vector を渡し、さらに nrow 引数に数値を渡して行列の行数を定義する。 すると matrix は指定された行数の行列になるように vector を再構成す […]

【Rベーシック】ベクトル (Vector) を作る

ベクトル (vector) の作り方。 ベクトル (Vector) とは vector は1次元ベクトルとして値を格納する。 イメージは、「1列のデータセット」。 例えば、下記の場合、Boxの中にそれぞれ数値が入っている。 これは、左から1,3,7,11,14という数字が格納された vector。   vector の中身は、数値でもいいし、文字列でも良い。 だたし、数値と文字列の混在の […]

【RStudio】基本言語を変更

この間、R と RStudio でバグが起こって全インストールし直したら、エラーメッセージが日本語に変わっていた。 どうやら、再インストールする時に疲れていて言語選択をスキップしてたみたい……。   別に日本語でも良いのだけれど、英語に慣れてしまったので、下記指示を入れて英語に変更。 Sys.setenv(LANG = "en") 無事、英語に戻せた。

【Rベーシック】絶対パスと相対パス

絶対パスと相対パスについて 上記、csvファイルやxlsxファイルを取り込む際、データが同じフォルダにあったら”ファイル名.csv” etc.だけでいいけど、ファイルが別の場所にある場合は、絶対パスや相対パスで場所を指定する。 絶対パス 場所を1番上の階層から全部書いていく。 Dat1 <- read_csv("D:/R/R directory/R_example/D […]

【Rベーシック】パイプ演算子:%>%

便利なパイプ演算子 %>% ……の覚書。 パイプ演算子とは パイプ演算子は、左辺のオブジェクトを右辺の関数に入れる機能を持つ演算子。 %>% %>%はtidyverseに含まれているパイプ演算子。%>%の左にあるデータを右の関数の第一引数に渡す役割を担う。 |> |>はR 4.1.0以降で備わっているパイプ演算子。   ・ ・ ・   今回は […]

【Rベーシック】NA とは何か?

「NA」とは、「Not Available」の略。 欠損値の場合もあるし、「認識できない」ときにも表示される。 TRUE   #1 で表される FALSE   #0 で表される NA という感じで、TRUE でも FALSE でもない場合に、「NA」と表示される。 eg. 下記のように入力した場合、 TRUE == TRUE TRUE == 5 FALSE == 1 FALSE == FALSE […]

【Rベーシック】データの取り込み

エクセルのデータ etc. を R にインポートする方法。 csv ファイル etc. の取り込み エクセルデータは基本 csv ファイルで保存し、R に取り込む。 CSV ファイル CSV ファイルは、「comma Separated Value」の略。 カンマ(,)で区切った値、という意味。 csvファイルは相互性が高く、Excel、メモ帳、メールソフト、データベースなどほとんどのソフトに取り […]

【Rベーシック】データ構造とデータ型

データ構造とデータ型の覚え書き。 データ構造 データ構造とは データ構造とは、データがどのように入っているのかを定めるもの。 Rでは5種類のデータ構造がある。 ベクトル (Vector) 行列 (Matrix) 配列 (Array) リスト (List) データフレーム (Data Frame) ベクトル (Vector) vector は1次元ベクトルとして値を格納する。 1つの vector […]

シンタックスハイライトを維持した状態でコードをメール本文に貼り付ける方法

ある日、友人にR Markdown のコードを確認してもらいたかったんですが、添付ファイルがごちゃごちゃしていたので、本文にも重要箇所だけ記載しておきたいという気持ちになりました。 でも、シンタックスハイライトがないと、なんとも読みにくい…… そこで、シンタックスハイライトを維持したままメールに添付する方法 ▼ R Markdown の内容を VS codeに貼り付け VS code を使います。 […]

【Rベーシック】演算子

演算子等の覚え書き。 論理演算子 論理演算子 < 左片は右辺より小さい > 左片は右辺より大きい <= 左片は右辺以下 >= 左片は右辺以上 == 等しい != 等しくない ! 否定 | 両辺のどちらかはTRUE & 両辺がともにTRUE || 条件内での “どちらかTRUE” && 条件内での “ともにTRUE& […]