統計Rの勉強-R intro 3章
前回に引き続き3章
3章はオブジェクトの性質や属性と、その表示方法、変換方法が書いてある。
で、2.8節でオブジェクトの種類をあげているので、そこから書いてみる。
vectorとlistの違い。matrixとdata frameの違いがわかったので、結構収穫。
- 主なオブジェクトは、vector、matrix、factor, list, data frame。function(関数)もオブジェクトの一つ。
- すべてのオブジェクトが、modeとlengthの属性をもつ。
- vector と list の違い
- vectorはすべて同じアトミックなタイプの要素をもつ(文字だけ、数字だけ)
- listは異なるタイプの要素を持っていても良い→統計結果を表すのに使う
- matrix と data frameの違い
- matrix は vectorの多次元版で、同じタイプの要素を持つ
- data frame は 異なるタイプの要素を持っていて良い→読み込むデータをあらわすのに使う
- classとmodeの違いがよくわからん。
-
-
-
-
-
- -
-
-
-
-
2.8節「オブジェクト (objects)」
- vector(ベクトル):よく使う。すべての要素は同じアトミックなモードを持つ。(モード=オブジェクトの型名のようなもの。アトミックなモード=再帰的に定義できないモード、数値、文字、論理値、複素数,,,)
- matrix(行列), array(配列):多次元のベクトル。5章で詳しく扱う。
- factor(因子):カテゴリデータを扱うもの。4章で扱う。
- list(リスト):統計結果を見るとき良く使う。ベクトルのようだが要素は同じモードでなくともよいし、アトミックなモードでなくともよい。6.1節で扱う。
- data frame(データフレーム):データ行列を表現するときに良く使う。マトリックスのようだが異なるモードの列をもてる。6.3節で扱う。
function(関数):これもオブジェクトの一つ。10章で書き方を扱う。
3節
3.1節
modeとlength=オブジェクトの基本的な属性、すべてのオブジェクトが持つ、暗黙的属性とも言う
- mode=オブジェクトの種類
z <- 0:9 mode(z) #zのmodeを知る length(z) #zの長さを知る attributes(z) #zのその他の属性を知る #この例では"NULL"が返る #モードを変換する digits <- as.character(z) #各要素を文字列に変換する d <- as.integer(digits) #各要素を数値に変換する#これで、zとdは同じ # 「as.なんとか」関数はたくさんあるみたい #長さを伸ばす:数値の空ベクトルを作り、第3要素を7、ほかをNAとするベクトルになる e<-numeric() #長さ0の数値ベクトル e[3]<-7 #長さを切り詰める:偶数の添え字の位置にある要素だけから成る長さ5のベクトルになる alpha <- c("a","b","c","d","e","f","g","h","i","j") alpha <- alpha[2 * 1:5] length(alpha) <- 3 #さらに要素を先頭から3つに切り詰める attr(z, "dim") #特定の名前の属性を表示 # この例ではNULLが返る attr(z, "dim") <- c(2,5) #2*5の行列としてみる #もとの要素数が10のベクトルから変換 #オブジェクトのクラス # プログラミング時に使う。 # "numeric", "logical", "character" , "list", "matrix", "array", "factor", "data.frame". # たとえば、クラスを見てオブジェクトの表示方法を変える。 # 一時的にクラスを取り去りたいときは、unclass(object)とする。