« [R]文字列の長さを得る | トップページ | [R]空の数値型ベクトルをまとめて作成する »

2025年12月31日 (水)

[R]文字列が数値に変換できるかどうか判定する

Rは、文字列が数値に変換できるかどうか判定する関数は、初期状態では実装されていない。そのため、次のような自作関数を使用する。

is_numeric <- function(s) {return(!is.na(suppressWarnings(as.numeric(s))))}

動作例は以下のとおり。数値に変換できない文字列はNAが返されるが、suppressWarnings関数により警告の表示が抑制されるため、そのままis.na関数で変換できたかどうか判定することができる。

> is_numeric(" ")
[1] FALSE
> is_numeric("1")
[1] TRUE
> is_numeric("2.0")
[1] TRUE
> is_numeric(" 3.0 ")
[1] TRUE
> is_numeric("4.e4")
[1] TRUE
> is_numeric("Senadia")
[1] FALSE
> is_numeric("セナディア")
[1] FALSE

« [R]文字列の長さを得る | トップページ | [R]空の数値型ベクトルをまとめて作成する »

R(文字と文字列)」カテゴリの記事

コメント

コメントを書く

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

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

« [R]文字列の長さを得る | トップページ | [R]空の数値型ベクトルをまとめて作成する »

無料ブログはココログ

■■

■■■