Rで文字列を読み込むときの型変換について [データサイエンス、統計モデル]
Rのバージョンを新しくしたら、read.tableで読み込んだ型がバージョンによって違うことが起こっていました。
古いバージョンだと、文字列を自動的にfactor型にしていたようですが、最近のバージョンだと自動的にfactor型にしないようです。
この問題を回避するには、stringsAsFactorsを付ければよくて、
■ 文字列を自動的にfactor型にしない
実行結果
■ 文字列を自動的にfactor型にする
実行結果
ちなみに、chr型で読み込んでも、後からas.factorで変換できます。
wine_dat["colour"] <- as.factor(wine_dat$colour)
古いバージョンだと、文字列を自動的にfactor型にしていたようですが、最近のバージョンだと自動的にfactor型にしないようです。
この問題を回避するには、stringsAsFactorsを付ければよくて、
■ 文字列を自動的にfactor型にしない
wine_dat <- read.table(file=csvPATH1, header=T, sep=",", stringsAsFactors=F)
str(wine_dat)
実行結果
$ colour : chr "WHITE" "WHITE" "WHITE" "WHITE" ...
$ ROLE : chr "TRAIN" "TRAIN" "TRAIN" "TRAIN" ...
■ 文字列を自動的にfactor型にする
wine_dat <- read.table(file=csvPATH1, header=T, sep=",", stringsAsFactors=T)
str(wine_dat)
実行結果
$ colour : Factor w/ 2 levels "RED","WHITE": 2 2 2 2 2 2 2 2 2 2 ...
$ ROLE : Factor w/ 3 levels "TEST","TRAIN",..: 2 2 2 2 2 1 2 3 3 2 ...
ちなみに、chr型で読み込んでも、後からas.factorで変換できます。
wine_dat["colour"] <- as.factor(wine_dat$colour)
コメント 0