2016年12月22日木曜日

データ型 character complex numeric logical

データ型には、数値を表すnumeric、論理値を表すlogical、文字列を表すcharacter があります。
文字列は " ダブルコーテーションマーク か ' シングルコーテーションマークでくくります。 
> s="ようこそRへ"
> s
[1] "ようこそRへ"
> s=c(s,"統計の世界へ")
> s
[1] "ようこそRへ"  "統計の世界へ"
Rにおける基本のデータに型は、文字列、複素数値、実数値、論理値があり、それぞれ、character、complex、numeric、logicalと呼びます。(複素数との対比のために実数値といいましたが、今後は数値と表現します。また、このブログでは複素数は扱いません。)変数や定数がどの型であるかを知るには、classを用います。
> s="ようこそRへ"
> class(s)
[1] "character"
> class(5)
[1] "numeric"
> class(TRUE)
[1] "logical"
> a=c(4,"おはよう")
> class(a)
[1] "character"
> a
[1] "4"        "おはよう"
下から5行目のaは数値と文字列を成分に持つベクトルを作ろうとしたところです。数値4が文字列型に変換されているのがわかります。
ベクトルの中に型が混在すると、先ほどの並びの順の最も左側の型になります。たとえばnumericとlogical が混在したらnumericになります。そのとき、TRUEは1にFALSEは0となります。
> T
[1] TRUE
> 3+T
[1] 4
数値と論理値が混在した計算でも、数値として計算され、TRUEが1として扱われていることがわかります。
sum 関数でもTRUEが1として扱われることは、先に見ました。

問題 文字列、数値、論理値を成分とするベクトルを作り、表示するとどうなるか、classはどうなるか、調べなさい。

0 件のコメント:

コメントを投稿