1
class
Rのライブラリにあるknn
関数を使用しようとしています。 "train"は "class"と同じ長さではないというエラーが表示されます。K-最近隣 -
列車とクラスの長さをそれぞれ印刷すると、電車の長さは100(必要に応じて)、クラスの長さは2(期待通り)であることがわかりました。私が正しく理解していれば、cl
すなわちクラスは、ラベルの因子分解されたベクトルを意味します。私のラベルはちょうど "オレンジ"と "青"です。ドキュメントの例に従ったが、エラーは続く。私のコードに明白に間違ったものがありますか?どんな助けもありがとうございます。
library(class)
x <- runif(100, 1, 100)
y <- runif(100, 1, 100)
train.df <- data.frame(x, y)
x.test <- runif(100, 1, 100)
y.test <- runif(100, 1, 100)
test.df <- data.frame(x.test, y.test)
cl <- factor(c(rep("orange", 100), rep("blue", 100)))
knn(train.df, test.df, cl, k=3, prob=TRUE)
clは200要素長です。代わりに各クラスに対して 'rep'を50回呼び出してみてください。 –
それはトリックでした。あなたが答えとしてあなたのコメントを投稿したいのであれば、私はそれをチェックすることができます。ありがとう! – KingDan
R /エラーメッセージの使用方法に関する質問はここでは解説していません。これは[SO]のトピックになります。あなたが待つことができるなら、私たちはあなたのためにそれを移行します。 – gung