«Невозможно подмножество столбцов, которые не существуют» для деревьев решений

#r #dataframe #decision-tree

#r #фрейм данных #дерево решений

Вопрос:

Здравствуйте, я кодирую дерево решений на R, и при запуске моего кода возникает эта ошибка :

Ошибка: невозможно подмножество столбцов, которые не существуют. x столбцов Member , Normal , Normal , Member , Normal , и т.д. не существуют.

df — это фрейм данных. Не могли бы вы мне помочь, пожалуйста? Спасибо. Вот мой код:

 library(rpart)
library(caret)
library(dplyr)
library(rpart.plot)
library(xlsx)
library(caTools)
library(data.tree)
library(elemstatlearn)

#Loading Excel File
library(readxl)
FINALDATA <- read_excel("Desktop/FINALDATA.xlsm")
View(FINALDATA)
df <- FINALDATA
View(df)

#Selecting the meaningful columns for prediction
df <- select(df, City, df$`Customer type`, df$Gender, df$Quantity, df$Total, df$Date, df$Time, df$Payment, df$Rating)```
 

Комментарии:

1. Вам не нужно df$ внутри select , т.е. select(mtcars, mtcars$mpg) Возвращает ошибку. вместо этого было бы select(mtcars, mpg)

2. Спасибо за ваш ответ. Однако, когда я пишу: df <- выберите (df, город, df $ Customer type , пол, количество, общее количество, дата, время, оплата, рейтинг) У меня такая же ошибка =(

3. Я упоминал, что вам не нужно df$ , т. е. df$Customer type должно быть Customer type в кавычках

4. Вот что это делает: df <- select(df, город, тип клиента, пол, количество, общее количество, дата, время, оплата, рейтинг) Ошибка R: неожиданный символ в «df <- select (df, город, тип клиента»

5. Вы можете скопировать / вставить код, который я предоставил в решении

Ответ №1:

Правильным использованием dplyr::select будут либо имена столбцов в кавычках, либо имена столбцов без кавычек, а не значение этого столбца ( df$City — извлекает значение этого столбца)

 library(dplyr)
df1 <- select(df, City, `Customer type`, Gender, 
        Quantity, Total, Date, Time, Payment, Rating)
 

Кроме того, существует много select-helpers доступных ( starts_with , ends_with , matches ) или используйте диапазон, т.е. Если мы заинтересованы в выборе всех столбцов от города до рейтинга, используйте :

 df1 <- select(df, City:Rating)
 

Комментарии:

1. Большое вам спасибо!!