Как реструктурировать данные в SPSS Modeler?
Не могли бы вы дать совет по реструктуризации данных, чтобы получить структуру данных, которую можно использовать для моделирования временных рядов в SPSS Modeler?
Например (в настоящее время имеет структуру ниже)
ID Period Value
ABC 1 100
ABC 2 110
DEF 1 50
DEF 2 50
DEF 3 60
GHJ 5 200
(необходимая структура)
Period ABC DEF GHJ
1 100 50
2 110 50
3 60
5 200
Я думал об использовании узла Transpose, но он не работает для такого случая, поэтому я использовал узел SetToFlag, а затем Transpose, но затем нужно как-то заменить значения T / F на значения для соответствующего периода / ID.
Я очень ценю любую помощь / совет. Заранее большое спасибо.
1 ответ
Я предлагаю следующую процедуру с реструктуризацией + агрегатом:
- В узле TYPE установите "ID" в качестве номинального и "Чтение значений"
- Используйте узел RESTRUCTURE с "ID", переместите его категории в "Создание реструктурированных полей", установите переключатель в положение "использовать значения из других полей" и выберите переменную "Значение"
- Используйте AGGREGATE, установите ключ как "Period" и выберите нужные поля для агрегирования, например, "ABC", "DEF", "GHJ". Совокупные средства (или max, min, это не имеет значения)
- Переименуйте новые переменные с помощью узла FILTER, чтобы избавиться от суффиксов. (Это может раздражать множество переменных, это может быть преодолено с помощью сценария или хитрого использования RESTRUCTURE, MERGE, value_at(), @FIELDS_BETWEEN(), но это гораздо сложнее объяснить и, вероятно, сейчас не нужно.)
Примечание: 3-я строка вашего примера должна быть:
GHJ 1 50
или это не соответствует желаемой структуре.