Задание 1

Установить пакет CARET, выполнить команду names(getModelInfo()), ознакомиться со списком доступных методов выбора признаков. Выполните графический разведочный анализ данных с использование функции featurePlot() для набора данных из справочного файла пакета CARET:

x <- matrix(rnorm(50*5),ncol=5)

y <- factor(rep(c(“A”, “B”), 25))

Сохранить полученные графики в *.jpg файлы. Сделать выводы.

Выполнение

Для начала установим пакет CARET:

Устанавливаю пакет в ‘C:/Users/qum1c/AppData/Local/R/win-library/4.4’ (потому что ‘lib’ не определено) устанавливаю также зависимости ‘listenv’, ‘parallelly’, ‘future’, ‘globals’, ‘shape’, ‘future.apply’, ‘numDeriv’, ‘progressr’, ‘SQUAREM’, ‘diagram’, ‘lava’, ‘tzdb’, ‘cpp11’, ‘prodlim’, ‘timechange’, ‘proxy’, ‘iterators’, ‘Rcpp’, ‘data.table’, ‘dplyr’, ‘clock’, ‘generics’, ‘gower’, ‘hardhat’, ‘ipred’, ‘lubridate’, ‘purrr’, ‘tidyr’, ‘tidyselect’, ‘timeDate’, ‘e1071’, ‘foreach’, ‘ModelMetrics’, ‘plyr’, ‘pROC’, ‘recipes’, ‘reshape2’Устанавливаю пакет в ‘C:/Users/qum1c/AppData/Local/R/win-library/4.4’ (потому что ‘lib’ не определено) устанавливаю также зависимости ‘listenv’, ‘parallelly’, ‘future’, ‘globals’, ‘shape’, ‘future.apply’, ‘numDeriv’, ‘progressr’, ‘SQUAREM’, ‘diagram’, ‘lava’, ‘tzdb’, ‘cpp11’, ‘prodlim’, ‘timechange’, ‘proxy’, ‘iterators’, ‘Rcpp’, ‘data.table’, ‘dplyr’, ‘clock’, ‘generics’, ‘gower’, ‘hardhat’, ‘ipred’, ‘lubridate’, ‘purrr’, ‘tidyr’, ‘tidyselect’, ‘timeDate’, ‘e1071’, ‘foreach’, ‘ModelMetrics’, ‘plyr’, ‘pROC’, ‘recipes’, ‘reshape2’

Скачанные бинарные пакеты находятся в
        C:\Users\qum1c\AppData\Local\Temp\RtmpsNYp6V\downloaded_packages

Загрузим пакет:

Загрузка требуемого пакета: ggplot2
Загрузка требуемого пакета: lattice

Выполним команду names(getModelInfo()) и ознакомимся со списком доступных признаков:

  [1] "ada"                 "AdaBag"              "AdaBoost.M1"        
  [4] "adaboost"            "amdai"               "ANFIS"              
  [7] "avNNet"              "awnb"                "awtan"              
 [10] "bag"                 "bagEarth"            "bagEarthGCV"        
 [13] "bagFDA"              "bagFDAGCV"           "bam"                
 [16] "bartMachine"         "bayesglm"            "binda"              
 [19] "blackboost"          "blasso"              "blassoAveraged"     
 [22] "bridge"              "brnn"                "BstLm"              
 [25] "bstSm"               "bstTree"             "C5.0"               
 [28] "C5.0Cost"            "C5.0Rules"           "C5.0Tree"           
 [31] "cforest"             "chaid"               "CSimca"             
 [34] "ctree"               "ctree2"              "cubist"             
 [37] "dda"                 "deepboost"           "DENFIS"             
 [40] "dnn"                 "dwdLinear"           "dwdPoly"            
 [43] "dwdRadial"           "earth"               "elm"                
 [46] "enet"                "evtree"              "extraTrees"         
 [49] "fda"                 "FH.GBML"             "FIR.DM"             
 [52] "foba"                "FRBCS.CHI"           "FRBCS.W"            
 [55] "FS.HGD"              "gam"                 "gamboost"           
 [58] "gamLoess"            "gamSpline"           "gaussprLinear"      
 [61] "gaussprPoly"         "gaussprRadial"       "gbm_h2o"            
 [64] "gbm"                 "gcvEarth"            "GFS.FR.MOGUL"       
 [67] "GFS.LT.RS"           "GFS.THRIFT"          "glm.nb"             
 [70] "glm"                 "glmboost"            "glmnet_h2o"         
 [73] "glmnet"              "glmStepAIC"          "gpls"               
 [76] "hda"                 "hdda"                "hdrda"              
 [79] "HYFIS"               "icr"                 "J48"                
 [82] "JRip"                "kernelpls"           "kknn"               
 [85] "knn"                 "krlsPoly"            "krlsRadial"         
 [88] "lars"                "lars2"               "lasso"              
 [91] "lda"                 "lda2"                "leapBackward"       
 [94] "leapForward"         "leapSeq"             "Linda"              
 [97] "lm"                  "lmStepAIC"           "LMT"                
[100] "loclda"              "logicBag"            "LogitBoost"         
[103] "logreg"              "lssvmLinear"         "lssvmPoly"          
[106] "lssvmRadial"         "lvq"                 "M5"                 
[109] "M5Rules"             "manb"                "mda"                
[112] "Mlda"                "mlp"                 "mlpKerasDecay"      
[115] "mlpKerasDecayCost"   "mlpKerasDropout"     "mlpKerasDropoutCost"
[118] "mlpML"               "mlpSGD"              "mlpWeightDecay"     
[121] "mlpWeightDecayML"    "monmlp"              "msaenet"            
[124] "multinom"            "mxnet"               "mxnetAdam"          
[127] "naive_bayes"         "nb"                  "nbDiscrete"         
[130] "nbSearch"            "neuralnet"           "nnet"               
[133] "nnls"                "nodeHarvest"         "null"               
[136] "OneR"                "ordinalNet"          "ordinalRF"          
[139] "ORFlog"              "ORFpls"              "ORFridge"           
[142] "ORFsvm"              "ownn"                "pam"                
[145] "parRF"               "PART"                "partDSA"            
[148] "pcaNNet"             "pcr"                 "pda"                
[151] "pda2"                "penalized"           "PenalizedLDA"       
[154] "plr"                 "pls"                 "plsRglm"            
[157] "polr"                "ppr"                 "pre"                
[160] "PRIM"                "protoclass"          "qda"                
[163] "QdaCov"              "qrf"                 "qrnn"               
[166] "randomGLM"           "ranger"              "rbf"                
[169] "rbfDDA"              "Rborist"             "rda"                
[172] "regLogistic"         "relaxo"              "rf"                 
[175] "rFerns"              "RFlda"               "rfRules"            
[178] "ridge"               "rlda"                "rlm"                
[181] "rmda"                "rocc"                "rotationForest"     
[184] "rotationForestCp"    "rpart"               "rpart1SE"           
[187] "rpart2"              "rpartCost"           "rpartScore"         
[190] "rqlasso"             "rqnc"                "RRF"                
[193] "RRFglobal"           "rrlda"               "RSimca"             
[196] "rvmLinear"           "rvmPoly"             "rvmRadial"          
[199] "SBC"                 "sda"                 "sdwd"               
[202] "simpls"              "SLAVE"               "slda"               
[205] "smda"                "snn"                 "sparseLDA"          
[208] "spikeslab"           "spls"                "stepLDA"            
[211] "stepQDA"             "superpc"             "svmBoundrangeString"
[214] "svmExpoString"       "svmLinear"           "svmLinear2"         
[217] "svmLinear3"          "svmLinearWeights"    "svmLinearWeights2"  
[220] "svmPoly"             "svmRadial"           "svmRadialCost"      
[223] "svmRadialSigma"      "svmRadialWeights"    "svmSpectrumString"  
[226] "tan"                 "tanSearch"           "treebag"            
[229] "vbmpRadial"          "vglmAdjCat"          "vglmContRatio"      
[232] "vglmCumulative"      "widekernelpls"       "WM"                 
[235] "wsrf"                "xgbDART"             "xgbLinear"          
[238] "xgbTree"             "xyf"                

Выполним графический разведочный анализ данных с использованиеv функции featurePlot() для набора данных из справочного файла пакета CARET:

Рис. 1. Результат построения графика типа boxplot для каждого признака
Рис. 1. Результат построения графика типа boxplot для каждого признака

Теперь получим график плотности для каждого признака:

Рис. 2. Результат построения графика плотности для каждого признака
Рис. 2. Результат построения графика плотности для каждого признака

Для того, чтобы сохранить эти графики в jpg формате, мы можем воспользоваться функцией jpeg()

windows 
      2 
windows 
      2

Задание 2

С использованием функций из пакета Fselector определить важность признаков для решения задачи классификации. Использовать набор data(iris). Сделать выводы.

Выполнение

Для начала установим пакет Fselector:

Устанавливаю пакет в ‘C:/Users/qum1c/AppData/Local/R/win-library/4.4’
(потому что ‘lib’ не определено)
устанавливаю также зависимости ‘RWekajars’, ‘rJava’, ‘entropy’, ‘randomForest’, ‘RWeka’

Скачанные бинарные пакеты находятся в
        C:\Users\qum1c\AppData\Local\Temp\RtmpsNYp6V\downloaded_packages

Затем загрузим пакет:

Для определения важности признаков для решения задачи классификации, воспользуемся функцией information.gain, используя набор data(iris):

Результат выполнения функции показал, что признак Petal.Width имеет наибольшую информационную выгоду при решении задачи классификации.

             attr_importance
Sepal.Length       0.4521286
Sepal.Width        0.2672750
Petal.Length       0.9402853
Petal.Width        0.9554360

#Задание 3

С использованием функции discretize() из пакета arules выполните преобразование непрерывной переменной в категориальную [3] различными методами: «interval» (равная ширина интервала), «frequency» (равная частота), «cluster» (кластеризация) и «fixed» (категории задают границы интервалов). Используйте набор данных iris. Сделайте выводы

##Выполнение

Для начала установим пакет arules:

Устанавливаю пакет в ‘C:/Users/qum1c/AppData/Local/R/win-library/4.4’
(потому что ‘lib’ не определено)
пробую URL 'http://cran.us.r-project.org/bin/windows/contrib/4.4/arules_1.7-8.zip'
Content type 'application/zip' length 2618372 bytes (2.5 MB)
downloaded 2.5 MB

пакет ‘arules’ успешно распакован, MD5-суммы проверены

Скачанные бинарные пакеты находятся в
        C:\Users\qum1c\AppData\Local\Temp\RtmpsNYp6V\downloaded_packages

Затем запустим пакет:

Загрузка требуемого пакета: Matrix

Присоединяю пакет: ‘arules’

Следующие объекты скрыты от ‘package:base’:

    abbreviate, write

Для преобразования непрерывной переменной в категориальную воспользуемся функцией discretize() из пакета arules и будем использовать набор данных iris. Для начала воспользуемся методом “interval” (равная ширина интервала):

В итоге преобразования непрерывной переменной в категориальную методом “interval”, мы получим:

  [1] [5.02,5.74) [4.3,5.02)  [4.3,5.02)  [4.3,5.02)  [4.3,5.02)  [5.02,5.74) [4.3,5.02) 
  [8] [4.3,5.02)  [4.3,5.02)  [4.3,5.02)  [5.02,5.74) [4.3,5.02)  [4.3,5.02)  [4.3,5.02) 
 [15] [5.74,6.46) [5.02,5.74) [5.02,5.74) [5.02,5.74) [5.02,5.74) [5.02,5.74) [5.02,5.74)
 [22] [5.02,5.74) [4.3,5.02)  [5.02,5.74) [4.3,5.02)  [4.3,5.02)  [4.3,5.02)  [5.02,5.74)
 [29] [5.02,5.74) [4.3,5.02)  [4.3,5.02)  [5.02,5.74) [5.02,5.74) [5.02,5.74) [4.3,5.02) 
 [36] [4.3,5.02)  [5.02,5.74) [4.3,5.02)  [4.3,5.02)  [5.02,5.74) [4.3,5.02)  [4.3,5.02) 
 [43] [4.3,5.02)  [4.3,5.02)  [5.02,5.74) [4.3,5.02)  [5.02,5.74) [4.3,5.02)  [5.02,5.74)
 [50] [4.3,5.02)  [6.46,7.18) [5.74,6.46) [6.46,7.18) [5.02,5.74) [6.46,7.18) [5.02,5.74)
 [57] [5.74,6.46) [4.3,5.02)  [6.46,7.18) [5.02,5.74) [4.3,5.02)  [5.74,6.46) [5.74,6.46)
 [64] [5.74,6.46) [5.02,5.74) [6.46,7.18) [5.02,5.74) [5.74,6.46) [5.74,6.46) [5.02,5.74)
 [71] [5.74,6.46) [5.74,6.46) [5.74,6.46) [5.74,6.46) [5.74,6.46) [6.46,7.18) [6.46,7.18)
 [78] [6.46,7.18) [5.74,6.46) [5.02,5.74) [5.02,5.74) [5.02,5.74) [5.74,6.46) [5.74,6.46)
 [85] [5.02,5.74) [5.74,6.46) [6.46,7.18) [5.74,6.46) [5.02,5.74) [5.02,5.74) [5.02,5.74)
 [92] [5.74,6.46) [5.74,6.46) [4.3,5.02)  [5.02,5.74) [5.02,5.74) [5.02,5.74) [5.74,6.46)
 [99] [5.02,5.74) [5.02,5.74) [5.74,6.46) [5.74,6.46) [6.46,7.18) [5.74,6.46) [6.46,7.18)
[106] [7.18,7.9]  [4.3,5.02)  [7.18,7.9]  [6.46,7.18) [7.18,7.9]  [6.46,7.18) [5.74,6.46)
[113] [6.46,7.18) [5.02,5.74) [5.74,6.46) [5.74,6.46) [6.46,7.18) [7.18,7.9]  [7.18,7.9] 
[120] [5.74,6.46) [6.46,7.18) [5.02,5.74) [7.18,7.9]  [5.74,6.46) [6.46,7.18) [7.18,7.9] 
[127] [5.74,6.46) [5.74,6.46) [5.74,6.46) [7.18,7.9]  [7.18,7.9]  [7.18,7.9]  [5.74,6.46)
[134] [5.74,6.46) [5.74,6.46) [7.18,7.9]  [5.74,6.46) [5.74,6.46) [5.74,6.46) [6.46,7.18)
[141] [6.46,7.18) [6.46,7.18) [5.74,6.46) [6.46,7.18) [6.46,7.18) [6.46,7.18) [5.74,6.46)
[148] [6.46,7.18) [5.74,6.46) [5.74,6.46)
attr(,"discretized:breaks")
[1] 4.30 5.02 5.74 6.46 7.18 7.90
attr(,"discretized:method")
[1] interval
Levels: [4.3,5.02) [5.02,5.74) [5.74,6.46) [6.46,7.18) [7.18,7.9]

Перейдем к методу “frequency” (равная частота):

Вывод:

  [1] [5,5.6)    [4.3,5)    [4.3,5)    [4.3,5)    [5,5.6)    [5,5.6)    [4.3,5)    [5,5.6)   
  [9] [4.3,5)    [4.3,5)    [5,5.6)    [4.3,5)    [4.3,5)    [4.3,5)    [5.6,6.1)  [5.6,6.1) 
 [17] [5,5.6)    [5,5.6)    [5.6,6.1)  [5,5.6)    [5,5.6)    [5,5.6)    [4.3,5)    [5,5.6)   
 [25] [4.3,5)    [5,5.6)    [5,5.6)    [5,5.6)    [5,5.6)    [4.3,5)    [4.3,5)    [5,5.6)   
 [33] [5,5.6)    [5,5.6)    [4.3,5)    [5,5.6)    [5,5.6)    [4.3,5)    [4.3,5)    [5,5.6)   
 [41] [5,5.6)    [4.3,5)    [4.3,5)    [5,5.6)    [5,5.6)    [4.3,5)    [5,5.6)    [4.3,5)   
 [49] [5,5.6)    [5,5.6)    [6.52,7.9] [6.1,6.52) [6.52,7.9] [5,5.6)    [6.1,6.52) [5.6,6.1) 
 [57] [6.1,6.52) [4.3,5)    [6.52,7.9] [5,5.6)    [5,5.6)    [5.6,6.1)  [5.6,6.1)  [6.1,6.52)
 [65] [5.6,6.1)  [6.52,7.9] [5.6,6.1)  [5.6,6.1)  [6.1,6.52) [5.6,6.1)  [5.6,6.1)  [6.1,6.52)
 [73] [6.1,6.52) [6.1,6.52) [6.1,6.52) [6.52,7.9] [6.52,7.9] [6.52,7.9] [5.6,6.1)  [5.6,6.1) 
 [81] [5,5.6)    [5,5.6)    [5.6,6.1)  [5.6,6.1)  [5,5.6)    [5.6,6.1)  [6.52,7.9] [6.1,6.52)
 [89] [5.6,6.1)  [5,5.6)    [5,5.6)    [6.1,6.52) [5.6,6.1)  [5,5.6)    [5.6,6.1)  [5.6,6.1) 
 [97] [5.6,6.1)  [6.1,6.52) [5,5.6)    [5.6,6.1)  [6.1,6.52) [5.6,6.1)  [6.52,7.9] [6.1,6.52)
[105] [6.1,6.52) [6.52,7.9] [4.3,5)    [6.52,7.9] [6.52,7.9] [6.52,7.9] [6.1,6.52) [6.1,6.52)
[113] [6.52,7.9] [5.6,6.1)  [5.6,6.1)  [6.1,6.52) [6.1,6.52) [6.52,7.9] [6.52,7.9] [5.6,6.1) 
[121] [6.52,7.9] [5.6,6.1)  [6.52,7.9] [6.1,6.52) [6.52,7.9] [6.52,7.9] [6.1,6.52) [6.1,6.52)
[129] [6.1,6.52) [6.52,7.9] [6.52,7.9] [6.52,7.9] [6.1,6.52) [6.1,6.52) [6.1,6.52) [6.52,7.9]
[137] [6.1,6.52) [6.1,6.52) [5.6,6.1)  [6.52,7.9] [6.52,7.9] [6.52,7.9] [5.6,6.1)  [6.52,7.9]
[145] [6.52,7.9] [6.52,7.9] [6.1,6.52) [6.1,6.52) [6.1,6.52) [5.6,6.1) 
attr(,"discretized:breaks")
[1] 4.30 5.00 5.60 6.10 6.52 7.90
attr(,"discretized:method")
[1] frequency
Levels: [4.3,5) [5,5.6) [5.6,6.1) [6.1,6.52) [6.52,7.9]

Затем к методу “cluster”(кластеризация):

Вывод:

  [1] [4.3,5.15)  [4.3,5.15)  [4.3,5.15)  [4.3,5.15)  [4.3,5.15)  [5.15,5.68) [4.3,5.15) 
  [8] [4.3,5.15)  [4.3,5.15)  [4.3,5.15)  [5.15,5.68) [4.3,5.15)  [4.3,5.15)  [4.3,5.15) 
 [15] [5.68,6.24) [5.68,6.24) [5.15,5.68) [4.3,5.15)  [5.68,6.24) [4.3,5.15)  [5.15,5.68)
 [22] [4.3,5.15)  [4.3,5.15)  [4.3,5.15)  [4.3,5.15)  [4.3,5.15)  [4.3,5.15)  [5.15,5.68)
 [29] [5.15,5.68) [4.3,5.15)  [4.3,5.15)  [5.15,5.68) [5.15,5.68) [5.15,5.68) [4.3,5.15) 
 [36] [4.3,5.15)  [5.15,5.68) [4.3,5.15)  [4.3,5.15)  [4.3,5.15)  [4.3,5.15)  [4.3,5.15) 
 [43] [4.3,5.15)  [4.3,5.15)  [4.3,5.15)  [4.3,5.15)  [4.3,5.15)  [4.3,5.15)  [5.15,5.68)
 [50] [4.3,5.15)  [6.24,7.02) [6.24,7.02) [6.24,7.02) [5.15,5.68) [6.24,7.02) [5.68,6.24)
 [57] [6.24,7.02) [4.3,5.15)  [6.24,7.02) [5.15,5.68) [4.3,5.15)  [5.68,6.24) [5.68,6.24)
 [64] [5.68,6.24) [5.15,5.68) [6.24,7.02) [5.15,5.68) [5.68,6.24) [5.68,6.24) [5.15,5.68)
 [71] [5.68,6.24) [5.68,6.24) [6.24,7.02) [5.68,6.24) [6.24,7.02) [6.24,7.02) [6.24,7.02)
 [78] [6.24,7.02) [5.68,6.24) [5.68,6.24) [5.15,5.68) [5.15,5.68) [5.68,6.24) [5.68,6.24)
 [85] [5.15,5.68) [5.68,6.24) [6.24,7.02) [6.24,7.02) [5.15,5.68) [5.15,5.68) [5.15,5.68)
 [92] [5.68,6.24) [5.68,6.24) [4.3,5.15)  [5.15,5.68) [5.68,6.24) [5.68,6.24) [5.68,6.24)
 [99] [4.3,5.15)  [5.68,6.24) [6.24,7.02) [5.68,6.24) [7.02,7.9]  [6.24,7.02) [6.24,7.02)
[106] [7.02,7.9]  [4.3,5.15)  [7.02,7.9]  [6.24,7.02) [7.02,7.9]  [6.24,7.02) [6.24,7.02)
[113] [6.24,7.02) [5.68,6.24) [5.68,6.24) [6.24,7.02) [6.24,7.02) [7.02,7.9]  [7.02,7.9] 
[120] [5.68,6.24) [6.24,7.02) [5.15,5.68) [7.02,7.9]  [6.24,7.02) [6.24,7.02) [7.02,7.9] 
[127] [5.68,6.24) [5.68,6.24) [6.24,7.02) [7.02,7.9]  [7.02,7.9]  [7.02,7.9]  [6.24,7.02)
[134] [6.24,7.02) [5.68,6.24) [7.02,7.9]  [6.24,7.02) [6.24,7.02) [5.68,6.24) [6.24,7.02)
[141] [6.24,7.02) [6.24,7.02) [5.68,6.24) [6.24,7.02) [6.24,7.02) [6.24,7.02) [6.24,7.02)
[148] [6.24,7.02) [5.68,6.24) [5.68,6.24)
attr(,"discretized:breaks")
[1] 4.300000 5.148882 5.681127 6.239781 7.016987 7.900000
attr(,"discretized:method")
[1] cluster
Levels: [4.3,5.15) [5.15,5.68) [5.68,6.24) [6.24,7.02) [7.02,7.9]

И к последнему методу - fixed(категории задают границы интервалов):

Вывод:

  [1] [5.02,5.74) [4.3,5.02)  [4.3,5.02)  [4.3,5.02)  [4.3,5.02)  [5.02,5.74) [4.3,5.02) 
  [8] [4.3,5.02)  [4.3,5.02)  [4.3,5.02)  [5.02,5.74) [4.3,5.02)  [4.3,5.02)  [4.3,5.02) 
 [15] [5.74,6.46) [5.02,5.74) [5.02,5.74) [5.02,5.74) [5.02,5.74) [5.02,5.74) [5.02,5.74)
 [22] [5.02,5.74) [4.3,5.02)  [5.02,5.74) [4.3,5.02)  [4.3,5.02)  [4.3,5.02)  [5.02,5.74)
 [29] [5.02,5.74) [4.3,5.02)  [4.3,5.02)  [5.02,5.74) [5.02,5.74) [5.02,5.74) [4.3,5.02) 
 [36] [4.3,5.02)  [5.02,5.74) [4.3,5.02)  [4.3,5.02)  [5.02,5.74) [4.3,5.02)  [4.3,5.02) 
 [43] [4.3,5.02)  [4.3,5.02)  [5.02,5.74) [4.3,5.02)  [5.02,5.74) [4.3,5.02)  [5.02,5.74)
 [50] [4.3,5.02)  [6.46,7.18) [5.74,6.46) [6.46,7.18) [5.02,5.74) [6.46,7.18) [5.02,5.74)
 [57] [5.74,6.46) [4.3,5.02)  [6.46,7.18) [5.02,5.74) [4.3,5.02)  [5.74,6.46) [5.74,6.46)
 [64] [5.74,6.46) [5.02,5.74) [6.46,7.18) [5.02,5.74) [5.74,6.46) [5.74,6.46) [5.02,5.74)
 [71] [5.74,6.46) [5.74,6.46) [5.74,6.46) [5.74,6.46) [5.74,6.46) [6.46,7.18) [6.46,7.18)
 [78] [6.46,7.18) [5.74,6.46) [5.02,5.74) [5.02,5.74) [5.02,5.74) [5.74,6.46) [5.74,6.46)
 [85] [5.02,5.74) [5.74,6.46) [6.46,7.18) [5.74,6.46) [5.02,5.74) [5.02,5.74) [5.02,5.74)
 [92] [5.74,6.46) [5.74,6.46) [4.3,5.02)  [5.02,5.74) [5.02,5.74) [5.02,5.74) [5.74,6.46)
 [99] [5.02,5.74) [5.02,5.74) [5.74,6.46) [5.74,6.46) [6.46,7.18) [5.74,6.46) [6.46,7.18)
[106] [7.18,7.9]  [4.3,5.02)  [7.18,7.9]  [6.46,7.18) [7.18,7.9]  [6.46,7.18) [5.74,6.46)
[113] [6.46,7.18) [5.02,5.74) [5.74,6.46) [5.74,6.46) [6.46,7.18) [7.18,7.9]  [7.18,7.9] 
[120] [5.74,6.46) [6.46,7.18) [5.02,5.74) [7.18,7.9]  [5.74,6.46) [6.46,7.18) [7.18,7.9] 
[127] [5.74,6.46) [5.74,6.46) [5.74,6.46) [7.18,7.9]  [7.18,7.9]  [7.18,7.9]  [5.74,6.46)
[134] [5.74,6.46) [5.74,6.46) [7.18,7.9]  [5.74,6.46) [5.74,6.46) [5.74,6.46) [6.46,7.18)
[141] [6.46,7.18) [6.46,7.18) [5.74,6.46) [6.46,7.18) [6.46,7.18) [6.46,7.18) [5.74,6.46)
[148] [6.46,7.18) [5.74,6.46) [5.74,6.46)
attr(,"discretized:breaks")
[1] 4.30 5.02 5.74 6.46 7.18 7.90
attr(,"discretized:method")
[1] interval
Levels: [4.3,5.02) [5.02,5.74) [5.74,6.46) [6.46,7.18) [7.18,7.9]

#Задание 4 Установите пакет Boruta и проведите выбор признаков для набора данных data(“Ozone”) [4, 5, 6]. Построить график boxplot, сделать выводы.

##Выполнение

Установим пакет Boruta:

Устанавливаю пакет в ‘C:/Users/qum1c/AppData/Local/R/win-library/4.4’
(потому что ‘lib’ не определено)
устанавливаю также зависимости ‘RcppEigen’, ‘ranger’

пробую URL 'http://cran.us.r-project.org/bin/windows/contrib/4.4/RcppEigen_0.3.4.0.2.zip'
Content type 'application/zip' length 2592470 bytes (2.5 MB)
downloaded 2.5 MB

пробую URL 'http://cran.us.r-project.org/bin/windows/contrib/4.4/ranger_0.16.0.zip'
Content type 'application/zip' length 763258 bytes (745 KB)
downloaded 745 KB

пробую URL 'http://cran.us.r-project.org/bin/windows/contrib/4.4/Boruta_8.0.0.zip'
Content type 'application/zip' length 456921 bytes (446 KB)
downloaded 446 KB

пакет ‘RcppEigen’ успешно распакован, MD5-суммы проверены
пакет ‘ranger’ успешно распакован, MD5-суммы проверены
пакет ‘Boruta’ успешно распакован, MD5-суммы проверены

Скачанные бинарные пакеты находятся в
        C:\Users\qum1c\AppData\Local\Temp\RtmpsNYp6V\downloaded_packages

Затем запустим пакет:

Помимо этого стоит установить пакет mlbench, без него не использовать набор данных “Ozone”:

Теперь же, мы можем перейти к выбору признаков.

 1. run of importance source...
 2. run of importance source...
 3. run of importance source...
 4. run of importance source...
 5. run of importance source...
 6. run of importance source...
 7. run of importance source...
 8. run of importance source...
 9. run of importance source...
 10. run of importance source...
 11. run of importance source...
After 11 iterations, +0.34 secs: 
 confirmed 9 attributes: V1, V10, V11, V12, V13 and 4 more;
 rejected 1 attribute: V3;
 still have 2 attributes left.

 12. run of importance source...
 13. run of importance source...
 14. run of importance source...
 15. run of importance source...
After 15 iterations, +0.46 secs: 
 rejected 1 attribute: V2;
 still have 1 attribute left.

 16. run of importance source...
 17. run of importance source...
 18. run of importance source...
 19. run of importance source...
 20. run of importance source...
 21. run of importance source...
 22. run of importance source...
 23. run of importance source...
 24. run of importance source...
 25. run of importance source...
 26. run of importance source...
 27. run of importance source...
 28. run of importance source...
 29. run of importance source...
 30. run of importance source...
 31. run of importance source...
 32. run of importance source...
 33. run of importance source...
After 33 iterations, +0.94 secs: 
 rejected 1 attribute: V6;
 no more attributes left.

Посмотрим на результат выбора признаков:

Boruta performed 33 iterations in 0.94104 secs.
 9 attributes confirmed important: V1, V10, V11, V12, V13 and 4 more;
 3 attributes confirmed unimportant: V2, V3, V6;

Теперь построим boxplot график:

Рис. 3. Результат построения графика типа boxplot
Рис. 3. Результат построения графика типа boxplot