I am a literacy researcher looking to create an add on package in R that offers quantitative methods for discourse analysis. I am creating a function for taking a chunk of text and measuring the syllables per word so
x <- c('dog', 'cat', 'pony', 'cracker', 'shoe', 'Popsicle', 'pronunciation' )
would yield: 1, 1, 2, 2, 1, 3, 5
Currently I have an algorithm that is about 90-95% accurate by following the these rules:
- The pattern eeing and eing counts as a 2 vowels (so seeing becomes sVV and being becomes bVV);
- An e at the end of a word is just dropped (as in come) which is counted as cVm;
- Two vowels next to each other (as in peach) is counts as one vowel sound (it becomes (pVch);
- Any singular vowel left counts as a V (Yoda becomes YVdV);
- The sum of the Vs is the number syllables in the word.;
Things that throw a monkey wrench into the problem are:
- compound words;
- non silent ending "e"s.
These are the rule breakers that don't follow my algorithm. Does anyone know of a dictionary of syllable rule breaker words?
I know this available as this was an approach similar to that used by Franklin Mark Liang (A guru in the art of syllabication) in his 1983 dissertation. This same approach is used by the online syllable counter and so I know such a dictionary exists. Having this dictionary to combine with my algorithm would make my approach very accurate.