すべてのデータ構造のテーブルでは、呼ぶ名称が異なります。
データベースの場合は、レコード、フィールド、カラムなどと呼んで
データマイニングやマシンランニングをする業界では、examples、attributesと呼びます
Rの場合はobservations、variableに呼びます。
実際の観測を大事にする統計言語らしいと思います。
Rは実測値を扱うので
1次元配列、2次元配列、3次元以上の配列の呼び方も全部違います。
まず、先にvectorについて簡単に調べたいと思います。
実は、以前のポストへのweightがvectorです。
以下はコードです。
結果です。文字テキストは同じなので
赤い箱だけご覧になってください。
xに1を一つ保存してもxはベクトルの一種です。
一次元配列に1つのデータが格納されだと思ってください。
気づいた人もいるかと思いますが、Rは基本的に配列の保存限界を設定しません。
単純な配列よりは、Javaに例えるならArrayListの性格を持ちます。
num_vector < - c(1,3,4,10,15)
num_vectorという1次元ベクトルを作成後
配列の形で数字を入れてみました。
cはcombine関数の略を意味します。
下は、ベクトルオブジェクトを取り出すためのコードです。
ここで注意すべき点は、ベクトルはCとJavaなどの他の言語とは違い
配列(ベクトル)のインデックスの開始値が0ではなく1という点です。
配列が1から始まるので、注意してください。
論理データと文字列データも保存が可能です。
「one」、「two 」、「 three」などの文字列データを入れることもできます。
このように、データタイプの定義が必要ないという点を考えてみれば
柔軟性が優れている言語です。
ところで注意すべき点は、
Rのベクトルの場合、一つのデータタイプしか保存できない点です。
上記のv1の結果データは「1、2、1、0」です。
真/偽をそれぞれ1/0に把握し、自動的にキャストしたのです。
上記、述べたように、これらの自動キャストは、以下のような規則に従います。
#Rからの自動型変換
#柔軟性が高いタイプで自動キャスト
#柔軟性:論理タイプ<整数型<ミスタイプ<文字列
全てのデータを文字列として認識します。
次のseq関数は1,2,3,4,5,6 ...設定値までの数字の配列を自動的に作ってくれます。
すなわち、上記の
は1、2、3、4、5の配列を作ってくれます。
(このコードは、v4 < - 1:5と同じです。)
この関数は、さまざまな方法として使えます。
v5 < - seq(1,10,2)
v5は1から2づつ増加する数字が入ります。
つまり、「1, 3, 5, 7, 9」の値が入ることになります。
v7 < - rep(1,10)は
1を10個作ってくれる関数で
v8 < - rep( "☆★"、5)は、
二つの星を5つ作ってくれる関数です。
このような関数を少し応用しv9のようなベクトルを作成することもできます。
댓글 없음:
댓글 쓰기