見出し画像

データ解析の流れ (3): データの選択

前回までで、データの読み込みと、連結を行いました。続いての処理は、データの選択 (select) です。計算に必要な部分を取り出す作業に該当します。

select() によるデータの選択

これまでのデータは、下記のようになっています。ここでは、inner_join() で連結した結果を、result という変数に格納しました。

> result <- inner_join(input_data, meta_data)
Joining, by = "Id"
> result
# A tibble: 3 × 5
  Id    Sample1 Sample2 Symbol Description
  <chr>   <dbl>   <dbl> <chr>  <chr>
1 id1         1       4 AAA    lorem ipsum a
2 id2         2       5 BBB    lorem ipsum b
3 id3         3       6 CCC    lorem ipsum c

result には、id1, id2, id3 の3行のアイテムについて、Id, Sample1, Sample2, Symbol, Description の5列の項目があります。行と、列の関係は、覚えておきましょう。

  • 行= 横 = 英語では、row

  • 列 = 縦 = 英語では、column

select は、「列」を選択する関数です。使い方は、簡単で、列名を書くだけです。下記は、 Symbol, Sample1, Sample2 を選択する例です。

> select(result, Symbol, Sample1, Sample2)

最初の引数に、どのデータを対象とするか(ここでは result)を指定します。2つ目の引数から、選択したい列名を指定します。結果は、ここで指定した順序になりますので、列の並び替えにも使用できます。

結果は下記のようになります。

# A tibble: 3 × 3
  Symbol Sample1 Sample2
  <chr>    <dbl>   <dbl>
1 AAA          1       4
2 BBB          2       5
3 CCC          3       6
>

*必要な「行」を選択するには、filter() を使います。これは次回で紹介します。

備考:列名によるトラブル

select() 関数で、データを指定できますが、その際、列名にスペースや記号 (+, - など) が含まれていると、エラーになります。元々、そのような列名を使わないほうが無難なのですが、どうしても使いたい場合は、バッククォート (`) で囲むと指定できます。*シングルクォート (') ではありません。

> select(result, `Sample 1`, `CD8+ cells`)


この記事が気に入ったらサポートをしてみませんか?