Я работаю с матрицей 7634x589. Я пытаюсь Подмножество моих данных в двух списков:Подмножество dataframe производит 0 строк
- случайных образцы 5344 строк (70% данных), и
- остальной части данных (2290 строк [30% данных ])
Вот что я делаю:
> dim(mydata)
[1] 7634 589
> trainingset <- mydata[sample(1:nrow(mydata), 5344),]
> dim(trainingset)
[1] 5344 589
Это все смотрит совершенным до этого:
> testingset <- mydata[!trainingset]
> dim(testingset)
NULL
Я пытаюсь заставить testingset включить все, кроме набора тренировок. Он должен иметь размеры 2290x589. Видимо, я делаю что-то неправильно. Может кто-нибудь помочь мне понять это? Я ДЕЙСТВИТЕЛЬНО ценю помощь, ребята.
После принятия предложения с комментаторами, я столкнулся с этим вопрос:
> dim(mydata)
[1] 7634 589
> id <- sample(1:nrow(mydata), 5344)
> trainingset <- mydata[id, ]
> dim(trainingset)
[1] 5344 589
> testingset <- mydata[!id, ]
> dim(testingset)
[1] 0 589
не могу понять, почему mydata[!id, ]
будет возвращать 0 строк. Спасибо, что понесли с собой, я совершенно новичок в этом. :(
Ваше имя вводит в заблуждение. 'Sample()', кажется, работает нормально. Проблема заключается в 'testingset <- mydata [! Trainingset]' строке. Я не уверен, почему вы думаете вы можете подмножить data.frame, используя другой data.frame, потому что это неверно. В первый раз вы выполнили правильную '[row, col]' подмножество 'mydata'. Я думаю, вы должны попробовать это снова. – MrFlick
Вы удаляете все столбцы. – CephBirk
Большое спасибо пользователю20650, это урок, в котором я нуждался! –