Saya memiliki satu kerangka data df, dengan dua kolom: Script (dengan teks) dan Speaker
Script Speaker
aze Speaker 1
art Speaker 2
ghb Speaker 3
jka Speaker 1
tyc Speaker 1
avv Speaker 2
bhj Speaker 1
Dan saya memiliki daftar berikut: L = ['a','b','c']
Dengan kode berikut,
df = (df.set_index('Speaker')['Script'].str.findall('|'.join(L))
.str.join('|')
.str.get_dummies()
.sum(level=0))
print (df)
Saya mendapatkan kerangka data ini df2:
Speaker a b c
Speaker 1 2 1 1
Speaker 2 2 0 0
Speaker 3 0 1 0
Baris mana yang dapat saya tambahkan dalam kode saya untuk mendapatkan, untuk setiap baris kerangka data saya df2, nilai persentase dari semua baris yang diucapkan oleh pembicara, untuk memiliki kerangka data berikut df3:
Speaker a b c
Speaker 1 50% 25% 25%
Speaker 2 100% 0 0
Speaker 3 0 100% 0