Добавил:
Studfiles2
Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз:
Предмет:
Файл:Курсовой проект групп 3341 и 3382 / FilterModule / ForFilt
.pas unit ForFilt;
interface
uses
Attribute,
AttributeStats,
Classes,
Dialogs,
DmmConstants,
DmmTypes,
Exceptions,
FastVector,
Math,
Instances,
SerializableObject,
StandardSerializableObject,
StreamTokenizer,
SysUtils,
Randomizer,
Utils;
function DellMissVect(target:TDMInstances):TDMInstances;
function DellMissAttr(target:TDMInstances):TDMInstances;
function FillHole(target:TDMInstances):TDMInstances;
implementation
function DellMissVect(target:TDMInstances):TDMInstances;
var
NumAttrib,i : Integer;
Begin
NumAttrib := target.numAttributes;
for i:=0 to NumAttrib-1 do
Begin
if (target.attrMissingValues(i)>0) then target.deleteWithMissing(i);
end;
DellMissVect:=target;
End;
function DellMissAttr(target:TDMInstances):TDMInstances;
var
NumAttrib,i : Integer;
Begin
i:=0;
NumAttrib := target.numAttributes;
while (i<NumAttrib) do
Begin
if (target.attrMissingValues(i)>0) then
begin
target.deleteAttributeAt(i);
i := i - 1;
NumAttrib := target.numAttributes;
end;
//str(inst.attrMissingValues(i),stri);
//ShowMessage(stri);
i:= i+1;
end;
DellMissAttr:=target;
End;
function FillHole(target:TDMInstances):TDMInstances;
var
NumAttrib,i : Integer;
MeanVal : double;
Begin
NumAttrib := target.numAttributes;
for i:=0 to NumAttrib-1 do
Begin
if (target.attrMissingValues(i)>0) then
Begin
MeanVal := target.meanOrMode(i);
if (target.attribute(i).isNumeric()) then
begin
target.replaceWithMissing(i, MeanVal);
end;
if (target.attribute(i).isNominal()) then
begin
target.replaceWithMissing(i, MeanVal); // !!!!!!!!!!!!!!!!!!!!
end;
end;
//str(inst.attrMissingValues(i),stri);
//ShowMessage(stri);
end;
FillHole:=target;
End;
end.
interface
uses
Attribute,
AttributeStats,
Classes,
Dialogs,
DmmConstants,
DmmTypes,
Exceptions,
FastVector,
Math,
Instances,
SerializableObject,
StandardSerializableObject,
StreamTokenizer,
SysUtils,
Randomizer,
Utils;
function DellMissVect(target:TDMInstances):TDMInstances;
function DellMissAttr(target:TDMInstances):TDMInstances;
function FillHole(target:TDMInstances):TDMInstances;
implementation
function DellMissVect(target:TDMInstances):TDMInstances;
var
NumAttrib,i : Integer;
Begin
NumAttrib := target.numAttributes;
for i:=0 to NumAttrib-1 do
Begin
if (target.attrMissingValues(i)>0) then target.deleteWithMissing(i);
end;
DellMissVect:=target;
End;
function DellMissAttr(target:TDMInstances):TDMInstances;
var
NumAttrib,i : Integer;
Begin
i:=0;
NumAttrib := target.numAttributes;
while (i<NumAttrib) do
Begin
if (target.attrMissingValues(i)>0) then
begin
target.deleteAttributeAt(i);
i := i - 1;
NumAttrib := target.numAttributes;
end;
//str(inst.attrMissingValues(i),stri);
//ShowMessage(stri);
i:= i+1;
end;
DellMissAttr:=target;
End;
function FillHole(target:TDMInstances):TDMInstances;
var
NumAttrib,i : Integer;
MeanVal : double;
Begin
NumAttrib := target.numAttributes;
for i:=0 to NumAttrib-1 do
Begin
if (target.attrMissingValues(i)>0) then
Begin
MeanVal := target.meanOrMode(i);
if (target.attribute(i).isNumeric()) then
begin
target.replaceWithMissing(i, MeanVal);
end;
if (target.attribute(i).isNominal()) then
begin
target.replaceWithMissing(i, MeanVal); // !!!!!!!!!!!!!!!!!!!!
end;
end;
//str(inst.attrMissingValues(i),stri);
//ShowMessage(stri);
end;
FillHole:=target;
End;
end.
Соседние файлы в папке FilterModule