У меня проблема с категоризацией набора данных.
Набор данных - это матрица, в которой строки представляют собой наблюдения, а столбцы - характеристики. Значение каждой функции находится в диапазоне от 0 до 1. Набор данных используется для целей обучения, и поскольку метод, который я собираюсь использовать, зависит от небольшого изменения, набор данных должен быть отформатирован, чтобы не быть чувствительным.
Моя идея заключалась в том, что вместо предоставления необработанных данных я хочу разделить значения функций на ячейки в соответствии с их числовыми значениями и предоставить среднее значение ячейки в качестве обучающих данных для обучения.
Бывший. бункеры (1-2,2-3,3-4,4-5,5-6,6-7,7-8,8-9,9-10)
dataset #original dataset
> [,1] [,2] [,3] [,4] [,5]
[1,] 8.1 5.3 10 4.4 4.6
[2,] 5.2 10 3.2 9.3 3.5
[3,] 7.3 1.6 9 8.9 8.4
[4,] 6.4 2.8 8 6.5 9.3
[5,] 10 4.3 2.2 1.1 5.3
transformed_dataset #binned dataset
> [,1] [,2] [,3] [,4] [,5]
[1,] 8.5 5.5 9.5 4.5 4.5
[2,] 5.5 9.5 3.5 9.5 3.5
[3,] 7.5 1.5 8.5 8.5 8.5
[4,] 6.5 2.5 8.5 6.5 9.5
[5,] 9.5 4.5 2.5 1.5 5.5
Я не уверен, как я должен собирать такие данные и передавать их в качестве входных данных для naiveBayes
из library("lattice")
. Я знаю, что signif
может округлять значение до заданного количества цифр и, таким образом, «связывать его», но я не могу определить количество ячеек.
Биннинг кажется способом улучшить классификацию. Но как предоставить это в качестве входных данных, я не уверен.
Обновление данных о data.frame
Думаю, я забыл упомянуть об этом, но данные хранятся в data.frame
, и я получаю доступ к данным с помощью $ data. все data.frame предоставляют метки для каждого наблюдения, к которым можно получить доступ с помощью $ labels.