[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]同じ文字列を繰り返した文字列を作成する(2026.02.02)
- [R]文字列が数値に変換できるかどうか判定する(2025.12.31)
- [R]文字列の長さを得る(2025.12.30)
- [R]空白を追加した指定の長さの文字列を得る(2025.12.26)
- [R]文字列型ベクトルの要素を連結して文字列を作る(2025.12.17)

コメント