SPSS: как организованно показывать пользовательские данные - PullRequest
0 голосов
/ 23 февраля 2019

Я импортировал данные в SPSS IBM, связанные с созданием препятствий в видеоигре, которые адаптируются к производительности игроков.Я протестировал 30 игроков.

Во-первых, метод Неадаптивный создает 30 карт с различной конфигурацией препятствий на каждой.Каждый пользователь воспроизводит карты, и результаты, касающиеся его производительности и конфигурации препятствий, сохраняются.

Затем метод Адаптивный предлагает пользователю выбрать между «простым», «нормальным» или «сложным»."карты и создает 10 карт с той сложностью, которую играет пользователь, и оценивается его / ее производительность.Затем игра запрашивает еще 2 раза и повторяет процесс, чтобы завершить 30 карт адаптивного метода.

Вот пример данных, импортированных на SPSS, относящихся к моей текущей проблеме.В примере показан 1 игрок:

enter image description here

Это информация, которую может рассказать пример:

Игрок 0 на первых 30 картахимел низкую производительность, поэтому для следующих 10 карт он выбирает легкую сложность.Он показывает лучшие результаты на этих 10 картах, поэтому на следующие 10 он выбирает сложный уровень сложности.Он показывает среднее по тем, поэтому для последних 10 он выбирает нормальную сложность.


Задача

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

Предыдущая таблица не 'не работает, потому что даже если игроков мало (30), каждый разыгрывает по 60 карт.Также мне нужно показать среднее значение производительности или любую дополнительную информацию, которую я могу.Показ отдельных показателей для каждой карты не работает.


То, что мне удалось сделать до сих пор

Это даже не близко крешение, которое я хочу.Просто я возился с данными, пытаясь показать что-то похожее на то, что я хочу.

  • Сначала я добавил новую переменную под названием CreationMethod2, которая преобразовывает метод Adaptive в «Adaptive 1», «Adaptive 2».или «Адаптивный 3» с учетом того, какая карта воспроизводится.
  • Затем я изменил данные, удалив результаты карты для каждого игрока, кроме 1.
  • И, наконец, я создал таблицу кросс-таблицы с помощью ChosenDifficulty для строк, Производительность для столбцов и CreationMethod2 для слоя.

Это таблица:

enter image description here

Как вы можете видеть, у меня теперь есть организованная таблица, которая показывает мне метод слева, а рядом с ним - сложность, которая была выбрана для этих 10 карт.И сверху у меня есть производительность карт.

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

Однако у меня нет проблем с отображением результатов отдельно для каждого пользователя, так как 30 относительно низок.Однако, если есть оптимальный способ показать анализ с помощью графика, а также включить всех пользователей, то я в игре.

Спасибо, что выслушали меня.

1 Ответ

0 голосов
/ 08 марта 2019

Звучит так, как будто вы хотите агрегировать данные до уровня PlayerId.Для каждого PlayerdId мы хотим знать среднее значение Performance, связанное с четырьмя методами (NonAdaptive, Adaptive1, Adaptive2, Adaptive3).

Для этого мы можем использовать AGGREGATE, но сначала давайте создадим переменные, которые мы хотим использовать для агрегации.

IF (CreationMethod2 = 'Non Adaptive') Performance_NA = Performance .
IF (CreationMethod2 = 'Adaptive 1') Performance_A1 = Performance .
IF (CreationMethod2 = 'Adaptive 2') Performance_A2 = Performance .
IF (CreationMethod2 = 'Adaptive 3') Performance_A3 = Performance .

IF (CreationMethod2 = 'Non Adaptive') ChosenDiff_NA = ChosenDifficulty .
IF (CreationMethod2 = 'Adaptive 1') ChosenDiff_A1 = ChosenDifficulty .
IF (CreationMethod2 = 'Adaptive 2') ChosenDiff_A2 = ChosenDifficulty .
IF (CreationMethod2 = 'Adaptive 3') ChosenDiff_A3 = ChosenDifficulty .
EXE .

Мы создадим эти переменные до агрегирования, потому что подкоманды Aggregate не предоставляют нам условной опции для непосредственного использования вPerformance и ChosenDifficulty переменные.

AGGREGATE
 /OUTFILE = 'data by PlayerId.sav'
 /BREAK = PlayerId
 /Performance_NA = MEAN(Performance_NA)
 /Performance_A1 = MEAN(Performance_A1)
 /Performance_A2 = MEAN(Performance_A2)
 /Performance_A3 = MEAN(Performance_A3)
 /ChosenDiff_NA = FIRST(ChosenDiff_NA)
 /ChosenDiff_A1 = FIRST(ChosenDiff_A1)
 /ChosenDiff_A2 = FIRST(ChosenDiff_A2)
 /ChosenDiff_A3 = FIRST(ChosenDiff_A3) .

Отсюда возьмите ваш новый набор данных и введите MEANS или CROSSTABS, чтобы суммировать данные.

DATASET CLOSE * .
GET FILE 'data by PlayerId.sav' .

You 'Вам все равно придется решить, как подходить к сводке данных для игроков, которые выбрали разные настройки сложности (включая последовательность выбора, если это важно).Тем не менее, если вы планируете профилировать каждого игрока в отдельности, вы не должны сталкиваться с какими-либо проблемами.

...