Това repository вкючва всичкият код и инструкции за възпроизвеждане от анализа на /r/bulgaria, описан в този блог пост.
За да извлека данни от Reddit до средата на миналата година ползвах библиотеката pushshift
, която разчиташе на официалното API на Reddit под повърхността.
През април 2023 година Reddit наложиха ограничения за количеството данни, които могат да бъдат изтеглени, използвайки официалното API. Това направи събирането на данни от големи събредити сравнително по-трудно от преди, но за щастие все още има мотивирани хора в Интернет пространството, които са отдадени да правят информацията достъпна и така се появиха няколко проекта, които имат за цел да поддържат достъпа до Reddit данни лесен за изследователи, анализатори и всички други. Един от тези проекти е Project Arctic Shift. Всички данни в този анализ (2008-2023 година) са изтеглени с помощта на този проект.
За да работите с кода в това repo и да може да възпроизведете всички модели тук, първо трябва да инсталирате някои библиотеки и да изтеглите данните.
-
Клониране на repo
git clone https://github.com/sakelariev/bg-reddit.git
-
Създаване на нова среда (conda or virtualenv)
conda create -n bg-reddit
-
Активиране на средата
conda activate bg-reddit
-
Инсталирайте всички библиотеки.
pip install -r requirements.txt
-
Отворете този торент и изберете да изтеглите единствено събредита
/r/bulgaria
-
След като се изтеглят преместете файловете в папката -
/data/docs
-
Извлечете данните от zst в SQLite.
python 1_get_data.py
След като направите горните стъпки, ще може да работите с Jupyter notebook файловете:
- 2_clean_transform_data.ipynb – изчистване на данните; разделяне на корпуса на два по-малки - английски и български; няколко графики;
- 3_analysis.ipynb – създаването на topic models и работа с тях; повечето графики и код от блог поста;
- 4_prepare_ngrams.ipynb – допълнителен notebook за създаване на n-gram данни;
CC BY-SA 4.0