[解決済み】 colMeans(x, na.rm = TRUE) のエラー : KNN分類では 'x' は数値でなければならない
2022-02-03 10:55:56
質問
分類モデルでknnを使おうとすると、以下のようなコードになります。
library(dplyr)
library(e1071)
library(ggplot2)
library(nnet)
library(DMwR)
library(rpart.plot)
library(class)
dat <- read.csv("C:/Users/Ze/Desktop/HallowSet/train.csv",header = T,stringsAsFactors = F)
needToSolve <- read.csv("C:/Users/Ze/Desktop/HallowSet/test.csv",header = T,stringsAsFactors = F)
dat$color <- factor(dat$color)
dat$type <- factor(dat$type)
sp <- sample(1:nrow(dat),0.7*nrow(dat))
train <- dat[sp,]
test <- dat[-sp,]
full <- rbind(train,test)
pre <-kNN(type ~ .,train ,test,k=3,norm=TRUE,type='class')
しかし、コードが次の行に到達したとき、私はcolMeans(x, na.rm = TRUE) : 'x' must be numericを得ました、私はそれが起こる理由とそれを解決する方法を知りません誰かそれを教えてください。 事前に感謝します。
str(full)です。
'data.frame': 259 obs. of 12 variables:
$ id : int 62 699 23 172 701 70 809 393 465 839 ...
$ bone_length : num 0.304 0.417 0.585 0.498 0.477 ...
$ rotting_flesh: num 0.267 0.625 0.593 0.374 0.479 ...
$ hair_length : num 0.527 0.329 0.681 0.58 0.404 ...
$ has_soul : num 0.387 0.28 0.936 0.512 0.545 ...
$ color : Factor w/ 6 levels "black","blood",..: 4 2 4 4 3 5 6 4 6 2 ...
$ type : Factor w/ 3 levels "Ghost","Ghoul",..: 3 1 2 3 2 1 1 2 1 3 ...
$ bone_flesh : num 0.0812 0.2608 0.3467 0.1866 0.2282 ...
$ bone_hair : num 0.16 0.137 0.398 0.289 0.192 ...
$ bone_soul : num 0.118 0.117 0.547 0.255 0.26 ...
$ flesh_hair : num 0.141 0.205 0.404 0.217 0.193 ...
$ flesh_soul : num 0.103 0.175 0.555 0.192 0.261 ...
解決方法は?
'Color'は係数です。kNNは数値入力しか受け付けません。変数Colorを数値変数に変えるか、Colorを完全に削除すればよい。
dat$color = as.numeric(dat$color)
関連
-
[解決済み】主成分分析:colMeans(x, na.rm = TRUE)のエラー:'x'は数値でなければなりません。
-
[解決済み】xtsオブジェクトでエラー: "antempt to set 'colnames' on the object with less than two dimension "を克服する方法
-
[解決済み】添え字付き代入でNAを使用することはできません
-
[解決済み】RでのMLEエラー:'vmmin'の初期値が有限でない
-
[解決済み】「次のオブジェクトは 'package:xxx' からマスクされています」とはどういう意味ですか?
-
[解決済み】x[[i]]でのエラー:レベル2で再帰的インデックス作成に失敗した
-
[解決済み】Rエラー。"新しい列は既存の列の後に穴を空ける"
-
[解決済み】 colMeans(x, na.rm = TRUE) のエラー : KNN分類では 'x' は数値でなければならない
-
[解決済み】RでKNN。trainとclassは長さが違う」?
-
[解決済み】ggplotのエラー。関数型オブジェクトのスケールを自動的に選択する方法がわかりません。
最新
-
nginxです。[emerg] 0.0.0.0:80 への bind() に失敗しました (98: アドレスは既に使用中です)
-
htmlページでギリシャ文字を使うには
-
ピュアhtml+cssでの要素読み込み効果
-
純粋なhtml + cssで五輪を実現するサンプルコード
-
ナビゲーションバー・ドロップダウンメニューのHTML+CSSサンプルコード
-
タイピング効果を実現するピュアhtml+css
-
htmlの選択ボックスのプレースホルダー作成に関する質問
-
html css3 伸縮しない 画像表示効果
-
トップナビゲーションバーメニュー作成用HTML+CSS
-
html+css 実装 サイバーパンク風ボタン
おすすめ
-
[解決済み】 'height' はベクトルか行列でなければならない barplot のエラー
-
[解決済み】model.frame.defaultでのエラー:変数の長さが異なる
-
[解決済み】エラー。Rの次元数が正しくない
-
[解決済み】ggplot boxplotでPosition-dodge警告?
-
[解決済み】データのマージ - fix.by(by.x, x)のエラー)
-
[解決済み】Rのメモリ管理/サイズn Mbのベクトルを割り当てられない
-
[解決済み】ggplotのエラー。関数型オブジェクトのスケールを自動的に選択する方法がわかりません。
-
[解決済み】Rで、Error: ggplot2 doesn't know how to handle of data of class numericに対処する。
-
[解決済み] na.fail.defaultのエラー:オブジェクトの値が見つからない - しかし、値が見つからないことはありません。
-
[解決済み】各グループの上位3要素を計算する際に「数値型、論理型、複合型でのみ可能な演算」を回避する方法