« [R]ロウ型ベクトルの値を置換する | トップページ | [R]行列に行を追加する »

2023年12月12日 (火)

[R]文字列から数値を作成する

as.numeric関数を使う。Rでは数値の扱いはデフォルトでは浮動小数点数(実数)のため、特に指定しない限り整数を表す文字列は浮動小数点数として扱われる。これを整数として扱うにはas.integer関数を使う。as.double関数はas.numeric関数と同じである。

> s <- c("0", "1", "-2", "3.14")
> print(s)
[1] "0" "1" "-2" "3.14"
> as.numeric(s)
[1] 0.00 1.00 -2.00 3.14
> as.integer(s)
[1] 0 1 -2 3
> as.double(s)
[1] 0.00 1.00 -2.00 3.14
> as.numeric(c("0", "1", "-2", "3.14", "abc"))
[1] 0.00 1.00 -2.00 3.14 NA
警告メッセージ:
強制変換により NA が生成されました

最後の例のとおり、数値を表さない文字列の場合は警告が発生し、数値ではなく強制的にNAに変換される。

« [R]ロウ型ベクトルの値を置換する | トップページ | [R]行列に行を追加する »

R(数と式)」カテゴリの記事

コメント

コメントを書く

コメントは記事投稿者が公開するまで表示されません。

(ウェブ上には掲載しません)

« [R]ロウ型ベクトルの値を置換する | トップページ | [R]行列に行を追加する »

無料ブログはココログ

■■

■■■