Получение последовательности кликов из фрейма данных - PullRequest
1 голос
/ 26 сентября 2019

У меня есть файл данных clickstream .csv в следующем формате:

     Step_Name   Session_ID
        p-1          1
        p-2          1
        defer        1
        p-1          2
        p-3          2
        buy          2
        p-4          3 
        defer        3

Я пытаюсь использовать пакет clickstream в R для анализа.Этот пакет требует, чтобы мы преобразовали вышеуказанные данные в этот формат:

   1    p-1    p-2    defer
   2    p-1    p-3    buy 
   3    p-4    defer   

, где первый столбец - это идентификатор сеанса, а количество столбцов может варьироваться для каждого сеанса в зависимости от количества шагов, предпринятых пользователем веб-сайта.Как получить исходные данные в указанном формате (в формате Excel или R)?

Также, если есть другие способы анализа данных о потоке кликов в R без таких манипуляций с данными, пожалуйста, дайте мне знать.

1 Ответ

0 голосов
/ 27 сентября 2019

Используя data.table , загрузите ваши данные:

> library(data.table)
> df = data.table('Step_Name' = c('p-1', 'p-2', 'defer','p-1','p-3','buy','p-4','defer'), 'Session_ID' = c(rep(1,3),rep(2,3),rep(3,2)))
> df
   Step_Name Session_ID
1:       p-1          1
2:       p-2          1
3:     defer          1
4:       p-1          2
5:       p-3          2
6:       buy          2
7:       p-4          3
8:     defer          3

Добавьте идентификатор номера строки, перезапуская для каждого нового Session_ID.

> df[, id := seq_len(.N), by = Session_ID]

Приведите вашу таблицу данных:

> df_final = dcast(df, Session_ID ~ id, value.var = 'Step_Name')

И ваш желаемый результат:

> df_final
   Session_ID   1     2     3
1:          1 p-1   p-2 defer
2:          2 p-1   p-3   buy
3:          3 p-4 defer  <NA>

NB: Это зависит от ваших данных в порядке в Session_ID.

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