Самый простой способ отобразить данные с двойного на целое без потери согласованности - PullRequest
3 голосов
/ 12 декабря 2010

Я пытаюсь найти лучший способ для последовательной нормализации.

В основном у меня есть определенное количество экземпляров, каждый с определенным количеством атрибутов с плавающими значениями:

Дляпример:

At1 At2 At3

0,1 0,3 3,0

0,1 4,5 2,1

...

И я хочу отобразить каждыйприписывать целочисленные значения, пытаясь соответствовать данным.

Я пытался, например, просто для каждого атрибута разделить разницу между максимальным значением и минимальным значением для этого атрибута, разделив его на произвольныйзначение как 10, а затем сопоставить все двойные значения каждого атрибута с индексом соответствующего интервала, и, таким образом, нормализуя мои атрибуты к целочисленным значениям от 1 до десяти ...

Но я бы хотелподход, который будет использовать наименьшее возможное число интервалов для каждого атрибута без потери согласованности, например, если у меня есть один атрибут с тремя возможными значениями: 1.2, 3.5и 223.3 моим подходом, использующим, например, интервалы из 10 возможных значений, у меня было бы множество ненужных интервалов для этого атрибута и МНОГО потраченного впустую пространства ...

Есть предложения?

1 Ответ

2 голосов
/ 12 декабря 2010

Я думаю, что вы спрашиваете о кодировке для сжатия или, более конкретно, как найти 1-1 карту действительных чисел.

Кодировка Хаффмана , вероятно, самая известная и может оказаться самой маленькой (в вашей терминологии наименьшее количество пропущенных интервалов). Диапазон кодирования также популярен.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...