はじめに
Rとはプログラミング言語の一つです。
Rでのエラーでよく出会うものを選んで、その原因と解決法を載せていきたいと思います。
Rでのエラー原因 「’x’ must be a numeric vector」
Rは、エクセルのように、文字列であるのか、数値であるのか認識して動きます。
今回は、数値として扱いたいのに、文字列で記入されていた場合などがこのエラーの原因となります。
例えば、身長と体重の相関を取りたいとします。
height <- c(162,180,167,173,168)
weight <- c(57,78,73,58,62)
dat <- data.frame(HEIGHT=height, WEIGHT=weight)cor.test(dat[,1],dat[,2])
Pearson's product-moment correlation
data: dat[, 1] and dat[, 2]
t = 1.3152, df = 3, p-value = 0.2799
alternative hypothesis: true correlation is not equal to 0
95 percent confidence interval:
-0.5949707 0.9696545
sample estimates:
cor 0.6047347
上記のように、計算できます。
しかし、作成したデータが、文字列データであれば
height <- c(“162″,”180″,”167″,”173″,”168”) #文字列になっている
weight <- c(57,78,73,58,62)
dat <- data.frame(HEIGHT=height, WEIGHT=weight)cor(dat[,1],dat[,2])
cor.test.default(dat[, 1], dat[, 2]) でエラー:
‘x’ must be a numeric vector
となります。
Rでのエラー解決 「’x’ must be a numeric vector」
もう一度、入力しなおしても良いですが、大量のデータを書き換えるのは大変です。
dat <- as.data.frame(sapply(dat, as.numeric))
上記を使えば、一発で解決できます。
おすすめ
Rの基本的なことであれば、下記の本がオススメです。
2016年に第3版が出ました。少し古いですが、基本が網羅されています。レビューも高評価。
基本ネットで調べれば出てきますが、本として包括的なテキストを持つことは、便利で私は一冊持っておくのが役立っています。
立ち読みも出来ますので、下記画像から立ち読みしてみてください。
こちらも高評価かつ新しい本になります。特に初心者におすすめの内容です。
知りたい内容があるか、目次で確認してもらえるので、必要であるか確認してみてください。
コメント