строка естественного языка в int - PullRequest
0 голосов
/ 22 ноября 2018

взять выборку предложений из каждого из корпусов corpus1, corpus2 и corpus3 и отобразить среднюю длину (измеряемую в виде количества символов в предложении).

, поэтому у меня есть 3 корпусаа sample_raw_sents - это определенная функция, которая возвращает случайные предложения:

tcr = corpus1()
rcr = corpus2()
mcr = corpus3()  
sample_size=50
for sentence in tcr.sample_raw_sents(sample_size):
    print(len(sentence))
for sentence in rcr.sample_raw_sents(sample_size):
    print(len(sentence))
for sentence in mcr.sample_raw_sents(sample_size):
    print(len(sentence))  

, поэтому с использованием этого кода печатаются все длины, хотя как мне суммировать () эти длины?

Ответы [ 3 ]

0 голосов
/ 22 ноября 2018

Используйте zip, это позволит вам составить предложение из каждого корпуса сразу.

tcr = corpus1()
rcr = corpus2()
mcr = corpus3()  
sample_size=50

zipped = zip(tcr.sample_raw_sents(sample_size),
             rcr.sample_raw_sents(sample_size),
             mcr.sample_raw_sents(sample_size))

for s1, s2, s3 in zipped:
    summed = len(s1) + len(s2) + len(s3)
    average = summed/3
    print(summed, average)
0 голосов
/ 22 ноября 2018
tcr = corpus1()
rcr = corpus2()
mcr = corpus3()  
sample_size=50
s = 0
for sentence in tcr.sample_raw_sents(sample_size):
    s = s + len(sentence)
for sentence in rcr.sample_raw_sents(sample_size):
    s = s + len(sentence)
for sentence in mcr.sample_raw_sents(sample_size):
    s = s + len(sentence)

average = s/150
print('average: {}'.format(average))
0 голосов
/ 22 ноября 2018

Вы можете сохранить все длины sentences в list и затем суммировать их.

tcr = corpus1()
rcr = corpus2()
mcr = corpus3()  
sample_size=50

lengths = []
for sentence in tcr.sample_raw_sents(sample_size):
    lengths.append(len(sentence))
for sentence in rcr.sample_raw_sents(sample_size):
    lengths.append(len(sentence))
for sentence in mcr.sample_raw_sents(sample_size):
    lengths.append(len(sentence))

print(sum(lengths) / len(lengths))
...