我希望你能帮助我完成一项任务。
我需要计算语料库中复数和单数的数量。我有一个语料库,其行具有以下结构:
['4', 'lanzas', 'lanza', 'NCFP000']
第一个位置 [0] 计算一个数字 (4),第二个位置 [1] 计算一个形式 (lanzas),第三个位置 [2] 计算一个引理 (lanza),第四个位置 [3] 计算一个类别 (NCFP000) 例如,动词、名词等。因此,在这个语料库中,每个单词都根据其引理和类别进行结构化,类别为我们提供了单词是单数、复数、阳性还是阴性的信息。
Here are some examples of lines from the corpus:
['1', 'Cargó', 'cargar', 'VMIS3S0']
['2', 'el', 'el', 'DA0MS0']
['3', 'camión', 'camión', 'NCMS000']
['4', 'con', 'con', 'SP']
['5', 'los', 'el', 'DA0MP0']
['6', 'trastos', 'trasto', 'NCMP000']
['7', 'más', 'más', 'RG']
['8', 'pesados', 'pesado', 'AQ0MP00']
['9', '.', '.', 'Fp']
因此,如您所见,最后一个位置 [3] 说明了单词的类别,因此 AQ0MP00 表示该单词是复数和形容词。
我的问题是在这种情况下如何计算复数和单数的数量?具体来说,我需要计算整个语料库中的以下类别(NCFS000、NCFP000、NCMS000 和 NCMP000,分别代表复数、单数、女性和男性)。
到目前为止,我已经尝试过:
corpus=open('F:/python/corpus-morf.txt','r')
text=open('F:/python/deberes.txt','r')
行=语料库.readlines()
对于 i 行:
lista=i.split()
#print(lista)
p=len(lista)
if p >0:
forma=lista[1].rstrip()
lema=lista[2].rstrip()
categoria=lista[3].rstrip()
aa=[forma,lema,categoria]
我被困在这里。
你有什么想法?我真诚地感谢您的帮助。