2016-07-05 6 views
0

特に有益な質問ではありませんが...Rはどのように文字を数値に変換しますか?

誤って文字列(文字と数字の組み合わせ)を数値列に変換しました。 Rがこの変換をどのようにして正確に行っているのだろうかと思っています。

+0

http://www.r-bloggers.com/type-conversion-and-you-or-and-r/ –

答えて

0

これは、元の文字ベクトルがどのようにエンコードされたかによって異なります。それが真の文字ベクトル、数はNAに置き換えられますないいずれかの値である場合:

dat <- c("a","b","c","d","a1","2b", "3") 
as.numeric(dat) 
# [1] NA NA NA NA NA NA 3 
# Warning message: 
# NAs introduced by coercion 

しかし、ベクトルが要因た場合、Rは、数値を代入する因子レベルを使用しています。

dat <- as.factor(c("a","b","c","d","a1","2b", "3")) 
dat 
# [1] a b c d a1 2b 3 
# Levels: 2b 3 a a1 b c d 
as.numeric(dat) 
# [1] 3 5 6 7 4 1 2 
関連する問題