Синхронизация портов и назначение Используемое для узла корреляции

0 голосов
AlexeyS в категории Как сделать...

Подскажите идеи настройки узла корреляции таким образом, чтобы при изменении набора столбцов, все они каждый раз получали назначение "Используемое". Задача считать корреляции всех комбинаций входных столбцов, набор которых меняется (например, получается из узла кросстаблицы в режиме  скользящие уникальные значения). Автоматическая синхронизация для новых столбцов ставит назначение  "Не задано" и без ручной перенастройки узла в расчет корреляций они не идут...

Пока вижу только некрасивое и непроизводительное решение в виде узла программирования, переопределяющего UsageType, например, узел JavaScript (но там приходится непроизводительно копировать все ячейки входного набора):

import { InputTable, InputTables, InputVariables, OutputTable, DataType, DataKind, UsageType } from "builtIn/Data";

Array.from(InputTable.Columns).forEach(column => 

 {   

  OutputTable.AddColumn({Name: column.Name,  DisplayName: column.DisplayName, 

                         DataType: column.DataType,   DataKind: column.DataKind,                        

                         DefaultUsageType:         UsageType.Active

                        });     

 });

for (let y = 0; y < InputTable.RowCount; y++) {

 OutputTable.Append();

 for (let i = 0; i < InputTable.ColumnCount; i++) OutputTable.Set(i, InputTable.Get(y, i));  // Ужас

}

Ответы: 2 шт.

0 голосов
arustamov_s
По поводу констультации с корреляционным анализом используя JS подсказать не смогу, однако для выполнения корреляции есть узел, который не требует программирования: "Корреляционный анализ"
0 голосов
nikolay.paklin
Пока что универсальный сценарий построения модели, или, в вашем случае, корреляционного анализа для всех входных столбцов датасета, которые могут динамически изменяться, можно сделать изящно только с использованием узла Python.

Посмотрите, как это сделано в библиотеке Loginom Python Kits.
...