Одинаковый заголовок экземпляров (arff) для всех запросов к моей базе данных

я используюInstanceQuery SQL-запросы, чтобы построить мойИнстансы, Но результаты моего запроса не всегда совпадают по порядку, как это обычно в SQL. Из-за этого экземпляры, созданные из разных SQL, имеют разные заголовки. Простой пример можно увидеть ниже. Я подозреваю, что мои результаты изменяются из-за этого поведения.

Заголовок 1

@attribute duration numeric
@attribute protocol_type {tcp,udp}
@attribute service {http,domain_u}
@attribute flag {SF}

Заголовок 2

@attribute duration numeric
@attribute protocol_type {tcp}
@attribute service {pm_dump,pop_2,pop_3}
@attribute flag {SF,S0,SH}

Мой вопрос: как я могу дать правильную информацию заголовка для конструкции Instance.

Возможно ли что-то вроде ниже рабочего процесса?

get pre-prepared header information from arff file or another place. give instance construction this header information call sql function and get Instances (header + data)

Я использую следующую функцию sql для получения экземпляров из базы данных.

public static Instances getInstanceDataFromDatabase(String pSql
                                      ,String pInstanceRelationName){
    try {
        DatabaseUtils utils = new DatabaseUtils();

        InstanceQuery query = new InstanceQuery();

        query.setUsername(username);
        query.setPassword(password);
        query.setQuery(pSql);

        Instances data = query.retrieveInstances();
        data.setRelationName(pInstanceRelationName);

        if (data.classIndex() == -1)
        {
              data.setClassIndex(data.numAttributes() - 1);
        }
        return data;
    } catch (Exception e) {
        throw new RuntimeException(e);
    }
}

Ответы на вопрос(2)

Ваш ответ на вопрос