Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Use appropriate readability function depending on the used language. #155

Closed
SuiOni opened this issue Jan 15, 2018 · 8 comments
Closed

Use appropriate readability function depending on the used language. #155

SuiOni opened this issue Jan 15, 2018 · 8 comments

Comments

@SuiOni
Copy link

SuiOni commented Jan 15, 2018

There are readability functions, whom parameters differ depending on the used language.
The Flesh-Readability-Ease is such a language depending function.

It would be useful to automatically the appropriate function for the used language.

Score Interpretation Estimated Reading Grade
90 to 100 Very easy 5th grade
80 to 90 Easy 6th grade
70 to 80 Fairly easy 7th grade
60 to 70 Standard 8th and 9th grade
50 to 60 Fairly difficult 10th to 12th grade (high school)
30 to 50 Difficult College
0 to 30 Very difficult College graduate

Yoast/YoastSEO.js#267

@bdewilde
Copy link
Collaborator

bdewilde commented Jan 15, 2018

Hi @SuiOni , sounds like a reasonable idea, and shouldn't be too hard to implement.

Since I've never seen language-dependent versions of Flesch Readability Ease, and the link you provided only includes references in German and Russian — neither of which I speak 😖 — I'm not able to access any of the references from the issue you linked to, I don't suppose you could point me to an English- or Spanish-language reference on these different readability formulations?

@SuiOni
Copy link
Author

SuiOni commented Jan 16, 2018

FLE(German) = 180 - ( total words/total sentences ) - 58.5( total syllables/total words ). https://de.wikipedia.org/wiki/Lesbarkeitsindex

FLE(Spanish) = 206.84 - 1.02 ( total words/total sentences ) - 0.60( syllables in 100 words ).

FLE(Italian) = 217 - 1.3( total words/total sentences ) - 0.6( syllables in 100 words ).
https://it.wikipedia.org/wiki/Formula_di_Flesch

FLE(French) = 207 - 1.015( total words/total sentences ) - 73.6( total syllables/total words ).

FLE(Russian) = 206.835 - 1.3( total syllables/total words ) - 60.1( total words/total sentences).
https://ru.wikipedia.org/wiki/%D0%98%D0%BD%D0%B4%D0%B5%D0%BA%D1%81_%D1%83%D0%B4%D0%BE%D0%B1%D0%BE%D1%87%D0%B8%D1%82%D0%B0%D0%B5%D0%BC%D0%BE%D1%81%D1%82%D0%B8

FLE(Dutch) = 206.84 - 0.77( #syllables in 100 words ) - 0.93( total words/total sentences ).
http://essay.utwente.nl/64884/1/Hensel,%20T.N.C.A.%20-%20s0170860%20(verslag).pdf (page 7)

So it's not easy to find real references in English for all languages.
I found Wikipedia sites and some other references.
For Spanish and French, I could not find any references except Yoast/YoastSEO.js#267

@bdewilde
Copy link
Collaborator

This is a great start, thanks a ton for your help!

@bdewilde
Copy link
Collaborator

Hey again, I'm looking at the link for the Italian formulation, and I think the multiplicative constants are swapped. Shouldn't it be

FLE(Italian) = 217 - 0.6( total words/total sentences ) - 1.3( syllables in 100 words )

?

@SuiOni
Copy link
Author

SuiOni commented Jan 18, 2018

Interesting. According to this paper http://www.rebe.rau.ro/RePEc/rau/jisomg/SP11/JISOM-SP11-A13.pdf page 3, Wikipedia seems to have it wrong.
screen shot 2018-01-18 at 10 50 14

@bdewilde
Copy link
Collaborator

Wow! Thanks for double-checking, I appreciate it.

@bdewilde
Copy link
Collaborator

Hi again, I'm going to close this issue out — I'll be merging a PR in shortly with the requested update. 👍

@SuiOni
Copy link
Author

SuiOni commented Jan 19, 2018

Hey my pleasure to help,
Textacy is a really nice library so I'm excited to help out.
Actually, I would like to contribute more as I am also a python developer. But I don't have much experience with open source contribution.
Let me know if there's something I could do.
Cheers Sak

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Projects
None yet
Development

No branches or pull requests

2 participants