アニメ『エルフィンリート』(elfen lied)(2004)
ベクターと呼ばれる特殊能力を持つ裸の女子と、コウタとユカが出合います。ジャンルはエログロでしょうか。 まだ一話しかみてないのでよくわかってませんが、全部みてから感想も更新します。
ベクターの語源はラテン語のvectorらしいです。ベクトル。英語読みでベクター。なんと、数学のベクトル(vector)と、割り込みベクターのベクター(vector)は同じものだったんですね。vectorですが、ラテン語で「運ぶ」という意味らしいです。学校で習うベクトルは、方向と長さを表すもんだ、と漠然と理解してはいたのですが、実は、方向、長さという二つの情報をまとめておく箱、みたいなものだったんです。
さて今回もR言語。ベクトルを使っていきたいと思います。R言語のベクトルは、複数の要素が格納できるオブジェクトです。他言語でいうところのリストや配列に当たります。
他言語で最初の要素のアクセスは、a[0] = 10、というように、0始まりの番号を使いますが、R言語では、1始まりの番号を使います。オブジェクトaの最初の要素は、a[1]となります。BASICでいうと、OPTION BASE 1の状態です。ただし、Rで起動した直後の状態では、aというオブジェクトは存在しません。
> a[1]=10 a[1] = 10 でエラー: オブジェクト 'a' がありません >
aをベクトルとして初期化するには、vector関数を使います。
> a = vector()
こうすることで、aがベクトルとなりましたので、添え字を使ってアクセス可能となります。
> a[1] = 10 > a [1] 10 >
先頭から順に入れていかないと、NA(Not Available)(欠損値)になります。
> a[3] = 30 > a [1] 10 NA 30 >
ベクトル要素の追加は、添え字ではなく、append関数を使った方がよいでしょう。
> b = vector() > b = append(b,10) > b = append(b,20) > b [1] 10 20 >
ベクトル内の全要素は、同一型となるため、数値しかないベクトルに文字列を追加すると、すべて文字列に変換されます。
> b [1] 10 20 > > b = append(b,"Thirty") > b [1] "10" "20" "Thirty" >
つづく
コメント