osrs hiscores
1.0.0
對舊派符號Hiscores的定量分析。
該存儲庫貢獻以下內容:
數據集由以下文件組成:
player-stats.csv :所有23個技能的技能水平,用於前200萬個OSRS帳戶。cluster-centroids.csv :基於帳戶相似性將播放器數據集分為組的群集的中心值。每個質心是“ OSRS技能”空間中1-99之間的值的向量。player-clusters.csv :三個單獨的群集運行的每個播放器群集ID,通過查看(i)所有技能,(ii)僅戰鬥技能以及(iii)非戰鬥技能來分組類似的帳戶。player-stats-raw.csv :排名,級別,XP,線索,迷你游戲和老闆統計數據,是前200萬OSRS播放器的。該文件是刮擦過程(1.7 GB)的原始輸出。由於文件大小約束,這些文件未進入存儲庫。它們可以從Google Drive分開下載:https://bit.ly/osrs-hiscores-dataset
2022年7月21日的24小時內,從官方OSRS HISCORES收集了播放器統計數據。
├── LICENSE
├── Makefile <- Top-level Makefile for building and running project.
├── README.md <- The top-level README for developers using this project.
│
├── app <- Application code and assets.
├── bin <- Utility executables.
│
├── data
│ ├── final <- The final, canonical data set.
│ ├── interim <- Intermediate data that has been transformed.
│ └── raw <- The original, immutable data dump.
│
├── ref <- Reference files used in data processing.
├── scripts <- Scripts for the stages of the data processing pipeline.
│
├── src
│ ├── analysis <- Data science and analytics.
│ └── scrape <- Scraping hiscores data.
│
├── test <- Unit tests.
│
├── Procfile <- Entry point for deployment as a Heroku application.
├── requirements.txt <- Dependencies file for reproducing the project environment.
├── runapp.py <- Main script for Dash application.
└── setup.py <- Setup file for installing this project through pip.
在高水平上,該存儲庫實現了數據科學管道:
scrape OSRS hiscores data
↓
cluster players by stats
↓
project clusters to 3D
↓
build application data
以及可視化結果的破折號應用程序。
數據管道的階段是由每個處理階段具有頂級make目標的Makefile驅動的:
make init :設置項目環境並安裝依賴關係。make scrape :從官方OSRS HISCORES中刮擦數據,然後轉換為清潔的數據集。make cluster :根據他們的統計數據將群體群體分成類似帳戶的組。 FAISS庫實現的使用K-均值作為聚類算法。make postprocess :將簇質心從高維空間到3D投影(用於可視化目的)(UMAP是用於降低維度的算法)。根據其中包含的玩家群體為每個群集計算四分位數。make build-app :使用所有先前的分析結果構建應用程序數據和數據庫。該目標將在URL localhost:27017 (默認情況下)的Docker容器內啟動MongoDB實例。步驟2和3可以通過簡單地運行make download-dataset來跳過(並且應該),從而從S3存儲桶中獲取了刮擦數據和聚類的結果。這需要一個AWS帳戶,該帳戶具有位於~/.aws目錄中的憑據。
要啟動該應用程序,請在Web瀏覽器中訪問make run-app並訪問URL localhost:8050 。
最終應用程序可以通過make app構建並運行,該應用程序使用下載的數據,而不是從頭開始刮擦和群集數據。目標make all是用來構建此存儲庫的最終結果的方法。如果刮擦數據,請注意,HISCORS API的高使用可能會導致您的IP被阻止。在您使用此代碼時,請保留和尊重Jagex的服務器資源。
運行make help以查看更多頂級目標。
設置了許多環境變量以配置應用程序。
OSRS_APPDATA_URI :應用程序數據.pkl文件(S3或local)的路徑OSRS_MONGO_URI :MongoDB實例的URLOSRS_MONGO_COLL :以此名稱從收集中存儲/檢索播放器數據在數據管道的每個階段,也有定義文件名的環境變量。
所有環境變量的默認值是在.env.default中定義的,並且每當運行make目標時導入。如果存在稱為.env的文件,則任何設置都將覆蓋.env.default中的文件。
~/.aws目錄中的憑據(在此處創建帳戶) all :所有23個OSR技能cb :7個戰鬥技能noncb :16個非戰鬥技能n_neighbors=10 , min_dist=0.25用於all和noncb ; n_neighbors=20 , min_dist=0.25用於分裂cb 。以下是數據科學項目的一些想法。