- 基本タイプオブジェクト Basic types (objects)
- これらは、上述したCによって定義されたオブジェクトをR的に分類しなおして、呼びなおした(ような)もの
- 一覧
- Vector objects
- List objects
- Language objects
- Expression objects
- Function objects
- NULL object
- Builtin objects and special forms
- Promise objects
- Dot-dot-dot "..."
- Environment objects
- Pairlist objects
- Any-type
- Vector objects
- 同様の要素を連続したセルに格納したもの
- Atomic vectorsとも呼ぶ(それは、以下に出てくる、同様でない要素を格納したListもvectorであることと区別するため)
- Index添え字を使ってアクセスする
- Index添え字の規則は重要なので、別記事で→こちら
- 格納するものは次の通り
- logical 論理値
- integer 整数値
- double 有理数値
- complex 複素数値
- character 文字値
- raw ??
- List objects
- Vector objectsが同様の要素を持つのに対し、List objectsの要素はそろっている必要はない
- 要素がそろっていないだけで、Vector objectsである
- したがってIndex添え字でアクセスされる。Index添え字規則は重要。別記事で→こちら
- Language objects
- いつ、使うものかわからないので、ひとまず、Language objectを作って置いておく
thisISlist<-list(a=1:4,b=c("+","-"))
thisISLanguage<-as.call(thisISlist)
thisISLanguage
-
- Symbol objects
- Language objectsの下部要素にsymbol objectsというのがある
- これは、関数名を呼び出したりするときに使うのではないか、と思うが、まだはっきりしない…
> thisIScharacter<-c("hello")
> thisIScharacter
[1] "hello"
> is.character(thisIScharacter)
[1] TRUE
> thisISsymbol<-as.name(thisIScharacter)
> thisISsymbol
hello
- Expression objects
- これも説明文の格納などに使われるものでLanguage objectsと似ているようだ
- 説明文書やらの作成に(背後で)使われているのかと想像する
- Function objects
- 処理を定義したもの
- 3つの要素からなる
- 引数リスト argument list
- 処理本体 body
- 環境 environment
- NULL
- オブジェクトが存在しないことを示すため
- 『空のベクトル』とかとは異なる
- Builtin objects とspecial forms
- .Primitive, .Internalとかで示される「見えない関数」
- Promise objects
- Dot-dot-dot objects
- Environments
- Pairlist
- Lispのdotted-pair listに対応するオブジェクト
- Any