0
我想学习如何在R请勿KNN,并在练习从包nycflights13航班数据集。我得到运行的错误下面的代码说KNN误差航班数据集
“训练”和“阶级”具有不同的长度
我的代码:
library(nycflights13)
library(class)
deparr <- na.omit(flights[c(4, 7, 16)])
classframe <- deparr[3]
flights %>% ggvis(~dep_time, ~arr_time, fill = ~distance) %>% layer_points()
set.seed(1234)
ind <- sample(2, nrow(deparr), replace=TRUE, prob=c(0.67, 0.33))
flights.training <- deparr[ind==1, 1:2]
flights.test <- deparr[ind==2, 1:2]
flights.trainlabels <- deparr[ind==1, 3]
flights.testlabels <- deparr[ind==2, 3]
predictions <- knn(train = flights.training, test = flights.test, cl = flights.trainlabels[,1], k = 3)
你明白你为什么这样做,你正在做的事情?你有两个不同的数据框。尝试'> STR(flights.training)' 班“tbl_df”,“TBL”和 'data.frame':\t 219806 OBS。 2个变量: $ dep_time:int 517 533 542 544 554 555 557 557 558 558 ... $ arr_time:int 830 850 923 1004 740 913 709 838 753 853 ... '> str(flights.test)'' 班 'tbl_df', 'TBL' 和 'data.frame':\t 108257 OBS。 $ dep_time:2个变量的诠释554 558 558 559 608 613 615 627 629 629 ... $ arr_time:整数812 849 923 702 807 925 1039 1018 824 721 ... –
感谢肖恩。不幸的是,我仍然和以前一样困惑。对不起,我对这个东西有点慢。 – madhatter5
我应该提到,从来没有使用过类框架。我之前使用过它,但后来改变了东西 – madhatter5