У меня есть платформа, отслеживающая нескольких клиентов и представителей чатов.Я хочу создать фреймы данных, содержащие всю упорядоченную историю чата одного клиента.
Вот ссылка на пример данных
И для быстрого ознакомления:
Convo Room Date Message Order User ID Role Chat contents
A1 3-Oct-17 1 JOHN CUSTOMER Hi, can you help?
A1 4-Oct-17 2 ALICE REP Sure, what's up?
A1 5-Oct-17 3 JOHN CUSTOMER I have warts.
A1 6-Oct-17 4 JOHN CUSTOMER Please don't hang up, it's just warts.
B1 7-Oct-17 1 JOHN CUSTOMER Hi, can YOU help?
B1 8-Oct-17 2 MARY REP Sure, I heard about Alice.
B1 9-Oct-17 3 MARY REP I also have warts.
B1 10-Oct-17 4 JOHN CUSTOMER Oh, nevermind then, gotta go.
C1 7-Oct-17 1 JIM CUSTOMER Hi, can you help?
C1 8-Oct-17 2 ALICE REP Maybe, what's up?
C1 9-Oct-17 3 JIM CUSTOMER Not warts.
C1 10-Oct-17 4 ALICE REP Good, that's the only thing I cannot handle.
D1 15-Oct-17 1 JOHN CUSTOMER Hi, pls help. Warts.
D1 16-Oct-17 2 JUDE REP Perfect, I cure them!
D1 17-Oct-17 3 JUDE REP …with fire.
D1 18-Oct-17 4 JUDE REP Are you still there? Dang, lost another one.
На мой взгляд, первый шаг - упорядочить данные, используя сводные таблицы.Затем я могу сосредоточиться на разделении чатов на фреймы данных для анализа настроений или других метрик.
Я считаю, что я близок, но я продолжаю получать одну часть неправильной сортировки.
Что у меня естьдо сих пор:
df = test.pivot_table(index=['Role', 'User ID', 'Date', 'Convo Room', 'Message Order'],columns=["Role"],aggfunc='first')
df.head()
Что возвращает следующее: С помощью Excel я считаю, что это, как правило, то, что я хочу, хотя я уверен, что есть много способов визуализировать это: