Подсчет в переменной на участника - PullRequest
0 голосов
/ 20 апреля 2020

У меня есть набор данных с 18 участниками и 350 записей на участника. У меня есть специфика c переменная (разговор), который имеет код 1 (да) или 0 (нет). Я хочу подсчитать, сколько раз он переключается с 0 на 1 для каждого участника, и добавить столбец с этими значениями. Я пытался использовать агрегат по всему набору данных, но мне не нужно среднее значение, просто n раз, когда оно переключается.

ОБРАЗЕЦ ДАННЫХ:

    VP code
    1a      0
    1a      1
    1a      0
    1a      1
    ...
    1b      0
    1b      1
    1b      0
    1b      1

ЖЕЛАЕМЫЙ ВЫХОД:

    VP switch
    1a      2
    1b      2
    2a      2
    2b      2
    ...

По сути, у меня есть 2 взаимодействующих участника, и я хочу видеть подсчет количества ходов, которые они совершают (ie. Раз они переключаются на разговор).

Есть совет? Большое спасибо.

1 Ответ

2 голосов
/ 20 апреля 2020

Другим вариантом будет свертывание с toString и последующее использование str_count из stringr:

transform(
  aggregate(code ~ VP, FUN = toString, data = df),
  code = stringr::str_count(code, '0, 1')
)

Вывод:

  VP code
1 1a    2
2 1b    2
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...