Репликация в пакете «RoughSets»

#r #decision-tree #fuzzy-search

#r #дерево решений #нечеткий поиск

Вопрос:

Я пытаюсь скопировать некоторые коды в свой собственный набор данных с помощью пакета «RoughSets». Но мне не удалось этого сделать.

Сначала я использую коды из пакета pdf.

 data(RoughSetData)
decision.table <- RoughSetData$hiring.dt
decision.table
  Diploma Experience French Reference Decision
1     MBA     Medium    Yes Excellent   Accept
2     MSc       High    Yes   Neutral   Accept
3     MSc       High    Yes Excellent   Accept
4     MBA       High     No      Good   Accept
5     MBA        Low    Yes   Neutral   Reject
6     MCE        Low    Yes      Good   Reject
7     MSc     Medium    Yes   Neutral   Reject
8     MCE        Low     No Excellent   Reject
## build the decision-relation discernibility matrix
res.2 <- BC.discernibility.mat.RST(decision.table, range.object = NULL)
## generate all reducts
reduct <- FS.all.reducts.computation(res.2)
## generate new decision table
new.decTable <- SF.applyDecTable(decision.table, reduct, control = list(indx.reduct = 1))
new.decTable
  Diploma Experience Decision
1     MBA     Medium   Accept
2     MSc       High   Accept
3     MSc       High   Accept
4     MBA       High   Accept
5     MBA        Low   Reject
6     MCE        Low   Reject
7     MSc     Medium   Reject
8     MCE        Low   Reject
  

Я пытался использовать свой собственный набор данных для репликации, но это не работает. Я также попытался использовать «write.csv» для записи decision.table на моем локальном компьютере, а затем снова вызвать его с помощью «read.csv». Но при этом выдается сообщение об ошибке.

 write.csv(decision.table, "decision.table.csv")
decision.table <- read.csv("decision.table.csv")
decision.table <- decision.table[-c(1)]
  Diploma Experience French Reference Decision
1     MBA     Medium    Yes Excellent   Accept
2     MSc       High    Yes   Neutral   Accept
3     MSc       High    Yes Excellent   Accept
4     MBA       High     No      Good   Accept
5     MBA        Low    Yes   Neutral   Reject
6     MCE        Low    Yes      Good   Reject
7     MSc     Medium    Yes   Neutral   Reject
8     MCE        Low     No Excellent   Reject

res.2 <- BC.discernibility.mat.RST(decision.table, range.object = NULL)
Error in BC.discernibility.mat.RST(decision.table, range.object = NULL) : 
Provided data should inherit from the 'DecisionTable' class.
  

Приветствуется любая помощь.

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

1. Я изменил заголовок.

Ответ №1:

Я провел небольшое исследование. Позже я нашел веб-сайт, где упоминается, как обращаться с набором данных (внешние данные).

Следующее изменение решит проблему.

 decision.table <- SF.asDecisionTable(dataset = decision.table, decision.attr = 4, indx.nominal = c(1,3:4))