Я пытаюсь проанализировать разговоры и мне нужен метод стандартизации меток динамиков. Каждый разговор представляет собой список подсписков, каждый подсписок состоит из двух строк: одна для идентификатора говорящего, а другая для фактического высказывания:
myconvo = [['bob','hello alice'],['alice','hello bob'],['bob','goodbye alice'],['alice','goodbye bob']]
В конечном итоге я хочу получить нечто вродениже, где метки ораторов были стандартизированы:
myconvo = [['speaker1','hello alice'],['speaker2','hello bob'],['speaker1','goodbye alice'],['speaker2','goodbye bob']]
Я немного растерялся, как поступить, учитывая, что у каждого разговора будут разные ораторы.
Пока я получилчто касается определения ...
# empty list to store speaker labels
speakers = set()
# iterate through convo adding speaker names
for sub in myconvo:
if sub[0] not in speakers:
speakers.add(sub[0])
# convert to list to access index (where position 0 will be the first speaker, position 1 will be second speaker etc.)
speakers = list(speakers)
Я не уверен, куда идти дальше, или даже если есть более короткий путь решения этой проблемы.