31 lines
971 B
ObjectPascal
31 lines
971 B
ObjectPascal
|
|
// Пример табличной предобработки:
|
||
|
|
// сначала заполняем пропуски в числовом столбце,
|
||
|
|
// затем кодируем категориальный столбец числами.
|
||
|
|
uses MLABC;
|
||
|
|
|
||
|
|
begin
|
||
|
|
var df := DataFrame.FromCsvText('''
|
||
|
|
city,population,region
|
||
|
|
Ростов-на-Дону,1142,Юг
|
||
|
|
Таганрог,NA,Юг
|
||
|
|
Воронеж,1058,Центр
|
||
|
|
Курск,452,Центр
|
||
|
|
Белгород,392,Центр
|
||
|
|
''');
|
||
|
|
|
||
|
|
Println('Исходные данные:');
|
||
|
|
df.Print;
|
||
|
|
Println;
|
||
|
|
|
||
|
|
// Заполняем пропуск в числовом столбце средним значением
|
||
|
|
var imputer := new Imputer(['population']);
|
||
|
|
df := imputer.FitTransform(df);
|
||
|
|
|
||
|
|
// Кодируем названия регионов числами 0, 1, 2, ...
|
||
|
|
var encoder := new LabelEncoder('region');
|
||
|
|
df := encoder.FitTransform(df);
|
||
|
|
|
||
|
|
Println('После Imputer и LabelEncoder:');
|
||
|
|
df.Print;
|
||
|
|
end.
|