Skip to main content

Data PPY CSV Retrieval

Retrieve data from the data ppy dump as CSV files.

❗ Important

I have been given permission to upload the script, however, not the data.

Thus, if you want to upload the data elsewhere, please contact ppy through contact@ppy.sh.

All data provided here is done so with the intention of it being used for statistical analysis
and testing osu! subsystems.

Permission is NOT implicitly granted to deploy this in production use of any kind.
Should you wish to publicly use/expose the data provided here, please contact me first at contact@ppy.sh.

Please see https://github.com/ppy/osu-performance for more information.

Thanks,
ppy

Downloading & Converting

  1. pip install osu-data-csv

  2. run osu-data-csv in the terminal

    osu-data-csv
    

    A series of prompts should show up. See Arguments below for more info and examples

  3. (Alternatively) run in a single command

    osu-data-csv \
      -y "2022_12" \
      -d "mania" \
      -s "1000" \
      -l "data/" \
      -c "N" \
      -q "Y" \
      -i "path/to/ignore_mapping.yaml"
    

Arguments

Option Option (Shorthand) Desc. Example
--year_month -y Dataset Year and Month. Will fail if doesn't exist anymore 2022_10
--mode -d Gamemode. ['catch', 'mania', 'osu', 'taiko'] mania
--set -s Dataset of Top 1K or 10K players. ['1000', '10000'] 1000
--dl_dir -l Directory to download to. Best if empty. Can be not created. data/
--cleanup -c Whether to delete unused files after conversion. ['Y', 'N'] N
--bypass_confirm -q Whether to bypass confirmation of downloaded and new files. ['Y', 'N'] N
--ignore_path -i Path to YAML file ignore specification (see next section) path/to/ignore_mapping.yaml

It's set to retrieve the following:

osu_user_stats_<MODE>.sql
osu_scores_<MODE>_high.sql
osu_beatmap_difficulty.sql
osu_beatmaps.sql

Selecting Columns

It's slow as it converts all columns. To speed this up, and reduce space taken, it's best to use --ignore_path with a YAML file.

  1. Download the template ignore_mapping.yaml here
  2. Comment out fields that you want to include.
  3. Call osu-data-csv -i path/to/ignore_mapping.yaml [other options]

For example

osu_beatmap_difficulty.sql:
#  - beatmap_id
  - mode
  - mods
  - diff_unified
  - last_update
osu_beatmaps.sql:
  - beatmap_id
  - beatmapset_id
#  - user_id
#  - filename
...

We'll retrieve beatmap_id from osu_beatmap_difficulty.sql and user_id, file_name from osu_beatmaps.sql

Output

This will generate a few files. You'd want to retrieve the .csv.

- main.py 
- <dl_dir>/
  - 202X_XX_01_performance_<MODE>_top_<SET>.tar.bz2 (*)
  - 202X_XX_01_performance_<MODE>_top_<SET>/
    - csv/
      - osu_user_stats_<MODE>.csv
      - _.csv
      - ...
    - osu_user_stats_<MODE>.sql (*)
    - _.sql (*)
    - ...
  • (*) files are deleted if cleanup is enabled.

Metadata

Release files for osu-data-csv 0.1.6

For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.

Source distribution (sdist)

Source distribution for osu-data-csv 0.1.6
File Size Uploaded
osu_data_csv-0.1.6.tar.gz 8.3 kB Details

Built distribution (wheel)

Table of built distributions (wheels) for osu-data-csv 0.1.6
File Interpreter ABI Platform
osu_data_csv-0.1.6-py3-none-any.whl Python 3 none any Details

Total release size: 18.0 kB

Release files / osu_data_csv-0.1.6.tar.gz

Download URL osu_data_csv-0.1.6.tar.gz
Size 8.3 kB
Tags Source
SHA-256 checksum
How to use checksums
5a01e230e21339f96de692064f6200aa9aa3e9f043d1bf88356e36ce8c5b2b7a
BLAKE2b-256 checksum
How to use checksums
32e19cae6f8061fb5e4163dca3cad2a63e45e41966c6af85e59ba27fb3278f45
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via poetry/1.3.2 CPython/3.9.13 Windows/10

Release files / osu_data_csv-0.1.6-py3-none-any.whl

Download URL osu_data_csv-0.1.6-py3-none-any.whl
Size 9.7 kB
Tags Python 3
SHA-256 checksum
How to use checksums
72c1bc3cea16b90bfa8d6c3b72dcea6f5e9d623b8a06079f749d12849cd0d249
BLAKE2b-256 checksum
How to use checksums
65fcab602b6202172260b6e98ee7dc6239e004ad7094a26665051d09812707b2
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via poetry/1.3.2 CPython/3.9.13 Windows/10

Release history Release notifications | RSS feed

This release

0.1.6 This release

2 release files

0.1.5

2 release files

0.1.4

2 release files

0.1.3

2 release files

0.1.2

2 release files

0.1.1

2 release files

0.1.0

2 release files

Anthropic, PBC Visionary sponsor Bloomberg Visionary sponsor Hudson River Trading Visionary sponsor Meta Visionary sponsor NVIDIA Visionary sponsor Microsoft Sustainability sponsor Depot Continuous Integration AWS Cloud computing and Security Sponsor Datadog Monitoring Fastly CDN Google Download Analytics Sentry Error logging StatusPage Status page