Média e variância de palavras pronunciadas

1

Estou trabalhando em lingüística e estou tentando calcular o tamanho médio da sentença e o quanto essa média varia. Eu trabalhei para deixar sempre uma frase por linha

Por exemplo:

La dernière fois qu'on, la dernière fois on l'a pas fait

Ouai

São 14 palavras, uma média de 7 por sentença e uma variação de (7-13) ^ 2/2 + 36/2 = 36, o que é realmente alto.

Euuseiocomandogeditecopieiumpassadodomeutrabalho:porexemplo,oiníciodoarquivophrasesAntoine:

Allumlalum...Elal...

Allumesinonsinonnon,maisaumoinspourvérifier.

Sisi

Ladernièrefoisqu'on,ladernièrefoisonl'apasfait

Lesamisj'vousprésenteBob,Boblegri-gri.

Salutlesamis,Hey

Tiens,ontepasselegrigri,celuiquialegrigrialedroitdeparler

C'estluiquialaparole

Iladû…

Estouprocurandoumscriptquepossacolocarcadalinhadeumarquivodetextoemumamatrizparasabersuaextensãoedescobriramédiaeavariânciaouqualquertipodeideiaquemepermitaencontraressalinhavariância.Naverdade,"Qu'est-ce que c'est" é de 6 palavras, cada uma separada por um blank ou ' ou -

Eu pensei primeiro em:

file wc -l >stat

Para obter essas informações para cada linha, mas sou novo no script ... Eu pensei em criar outro arquivo chamado calculator , considerando as estatísticas como um argumento que é a variável $file :

file
int number_of_phrases = $file wc -l;
int mean = /*number of words divided by number of phrases*/
int sum = 0;
int variance =0 ;
for i=0 to number_of_phrases{
    /* here is the calculation of xi-m
    sum = sum + (number of words at line i divided - mean)^2*/
}
variance = sum/number_of_phrase

Esse é o meu melhor palpite. Você tem uma ideia melhor?

    
por ThePassenger 13.04.2016 / 10:44

1 resposta

1

Perl é provavelmente a melhor linguagem para este tipo de trabalho. O principal autor de Perl, Larry Wall , é tanto um programador de unix como lingüista, e a linguagem reflete strongmente seu interesse em lingüística. Existem vários perl modules para processamento de idiomas, bem como processamento de texto simples.

Por exemplo, Lingua :: Sentence que é um perl module para dividir parágrafos em sentenças. E vários outros Lingua:: modules. De fato, Lingua::Sentence e módulos relacionados foram escritos para uma tarefa muito parecida com o que você é fazer agora, análise estatística dos textos (neste caso, o corpus Europarl , texto extraído dos anais do Parlamento Europeu)

Você poderia, por exemplo, usar Lingua::Sentence para dividir cada parágrafo em frases, contar o número de palavras em cada frase, armazenar essa contagem em uma matriz e, em seguida, executar quaisquer análises estatísticas necessárias na matriz.

O Perl também tem vários módulos para análise estatística, que você também pode encontrar no CPAN (o Comprehensive Perl Archive Network) ou você pode Envie os dados brutos para um arquivo e processe-os com R ou alguma outra ferramenta de estatísticas.

    
por 13.04.2016 / 11:12