こんにちは、ミントです
「R」でデータをあつかう時に、これまでこんなオブジェクトを作成しました
kudamono <- c(“りんご” , “みかん”, “バナナ”)
のような感じで作っていました
りんご、みかん、バナナを kudamono として、ひとまとまりで表現されています
このように、データをひとかたまりに表現したとき、そのデータの構造を、「データ構造」と呼びます
世の中にはさまざまなデータがありますが、Rで統計処理していくには、適切なデータ構造に入れてから解析をおこなう必要があります
というわけで、Rによる統計解析に必須の「データ構造」をサクッとまとめてみました
本記事の概要
「R」には、どんなデータ構造があるの?
具体的なデータ構造は、以下の5種類があります
(1)、ベクトル
(2)、行列
(3)、配列
(4)、データフレーム
(5)、リスト
へぇ~こんなにあるの~って方から、
プログラミングの経験者なら、ベクトルと配列って一緒じゃないの??
って方など、さまざまな印象をもたれるかもしれません
それぞれについての詳細はおいおい説明しますので、ここではこの5つが何なのか、簡単につかんでみましょう~
「R」のデータ構造をサクッと学んでみる
ベクトル、行列、配列、データフレーム、リストについて、どんなものかをサクッと紹介します
作り方や使い方など、詳細はおいおい説明しますので、ここではどんなものかをつかんでもらえればオッケーです
ベクトル
ベクトルは、複数の要素をまとめて表現したものです
この例では、おにぎりの具のたらこ・シャケ・梅干しをひとまとまりとして、onigiri というオブジェクトに収納しています
この「c( ) 関数」を使ってベクトルを表現します
注意点としては、ベクトルの中の要素(たらこ、シャケ、梅干し)は、すべて同じ型でなければなりません
c (“たらこ”, 2, “バナナ”)
のように、文字型と数値型をいっしょに入れることはできません
行列
行列のイメージは、表です
身長 | 体重 | |
Aくん | 175 | 67 |
Bさん | 162 | 51 |
こんな表があったときに、数字の部分だけ使いたいとします
行列を作成するには、「matrix( ) 関数」を使います
結果のピンク文字をみると、表の数値を再現できています
このように、表のデータをRで使うときに行列のデータ構造が使えます
配列
配列というと、プログラミングの経験がある方は、ベクトルのことを思い浮かべるかもしれません
Rでの配列は少し違います
たとえば、以下のように、身体検査の結果で、1組、2組があったとします
1組 | 身長 | 体重 |
Aくん | 175 | 67 |
Bさん | 162 | 51 |
2組 | 身長 | 体重 |
Cくん | 172 | 72 |
Dさん | 153 | 44 |
これをRに取り込んでみましょう
「array ( ) 関数」をつかいます
ピンク文字のように、表のデータが再現できました
このようなデータ構造をRでは「配列(array)」と呼んでいます
データフレーム
データフレームは、ベクトルや行列と似ています
ベクトルや行列は、同じ型のデータだけしか扱えませんが、データフレームでは文字と数値など、異なる型のデータを混在させて格納することができます
身長 | 体重 | |
Aくん | 175 | 67 |
Bさん | 162 | 51 |
この表をつくってみましょう~
「data.frame ( ) 関数」をつかいます
行列のところで作った、オブジェクト「身体検査」を、データフレームに変換しています
中身をみてみると、数字の部分は再現できてますが、行と列の名前が違っています
そこで、行と列の名前を変えてみましょう~
列名の変更には、「colnames ( ) 関数」をつかいます(カラム(列)の名前です)
行名の変更には、「rownames ( ) 関数」をつかいます(ロウ(行)の名前です)
これで表が再現できましたね
このように、データフレームは、数値や文字を混在させたデータも扱うことができます
リスト
リストは、ベクトルや行列、配列、リストなど、型が異なるデータを、1つのオブジェクトとしてまとめて扱うことができるデータ構造です。データフレームは行数や列数が固定されていますが、リストはそういう制限もなく、さらに柔軟なデータ構造です
「list ( ) 関数」をつかいます
「身体検査リスト」オブジェクトには、2つのベクトル(Aくん、Bさん)(身長、体重)と、身体検査の行列データが格納されています。ベクトルには文字が、行列には数値が入っていて、リストでは異なるデータ型のデータをまとめて扱えます
なんかむずかしそうだなぁ~
なんて思われた方、だいじょうぶです
それぞれの詳しい作り方・使い方は、次の機会にきちんと説明します
今回はこんなもんなんだ~くらいにイメージをつかんでもらったらオッケーです 🙂
というわけで、Rの5つのデータ構造について、かけ足で説明しました
Rでの、ベクトルのつくり方はこちら↓
こちら無料で読めます↓