{"id":20997,"library":"benchpots","title":"BenchPOTS","description":"A Python toolbox for benchmarking machine learning on partially-observed time series. Supports preprocessing of 170+ open-source datasets including UCR&UEA, PhysioNet, air quality, electricity, and traffic data. Current version is 0.5, with active development on GitHub.","status":"active","version":"0.5","language":"python","source_language":"en","source_url":"https://github.com/WenjieDu/BenchPOTS","tags":["time-series","benchmarking","datasets","missing-data","preprocessing"],"install":[{"cmd":"pip install benchpots","lang":"bash","label":"Install from PyPI"}],"dependencies":[],"imports":[{"note":"Direct import from benchpots is available; e.g. from benchpots import preprocess_physionet2012 also works.","symbol":"preprocess_physionet2012","correct":"from benchpots.datasets import preprocess_physionet2012"},{"note":"preprocess_ucr_uea is in the datasets submodule; importing from top-level benchpots may fail.","wrong":"from benchpots import preprocess_ucr_uea","symbol":"preprocess_ucr_uea","correct":"from benchpots.datasets import preprocess_ucr_uea"}],"quickstart":{"code":"from benchpots.datasets import preprocess_physionet2012\nimport os\n\n# Download and preprocess PhysioNet-2012 dataset\ndata = preprocess_physionet2012(\n    data_path=os.environ.get('DATA_PATH', './data'),\n    artifact_path=os.environ.get('ARTIFACT_PATH', './results')\n)\nprint(data.keys())","lang":"python","description":"Download and preprocess the PhysioNet-2012 dataset."},"warnings":[{"fix":"Upgrade to v0.3.2 or later: pip install benchpots>=0.3.2","message":"In v0.3.2, the sliding window function had a tensor sample stacking bug that was fixed. If you used v0.3.1 or earlier, sliding window outputs may have incorrect shapes.","severity":"breaking","affected_versions":"<=0.3.1"},{"fix":"Check return structure in each version's documentation.","message":"The preprocess_physionet2012 function may change its return format in future releases. It currently returns a dictionary with keys 'X', 'y', 'M', etc., but this is not guaranteed stable.","severity":"deprecated","affected_versions":"0.5"},{"fix":"Pre-download the dataset files and provide the correct data_path.","message":"Some datasets require manual download or specific file paths. For example, PhysioNet data must be downloaded separately. The function will not automatically fetch missing files.","severity":"gotcha","affected_versions":"all"},{"fix":"Upgrade to v0.2.2+ or manually encode labels.","message":"The 'UCR&UEA' datasets with string labels in v0.2.1 and earlier caused loading errors. This was fixed in v0.2.2, but string labels are encoded into int. Be aware of label encoding changes.","severity":"gotcha","affected_versions":"<=0.2.1"}],"env_vars":null,"last_verified":"2026-04-27T00:00:00.000Z","next_check":"2026-07-26T00:00:00.000Z","problems":[{"fix":"Run 'pip install benchpots' to install.","cause":"Package not installed.","error":"ModuleNotFoundError: No module named 'benchpots'"},{"fix":"Use 'from benchpots.datasets import preprocess_ucr_uea' instead.","cause":"Function is in a submodule, not top-level.","error":"AttributeError: module 'benchpots' has no attribute 'preprocess_ucr_uea'"},{"fix":"Download the dataset files manually and set the correct data_path parameter.","cause":"The required dataset files are missing from the specified data_path.","error":"ValueError: Dataset not found at path"}],"ecosystem":"pypi","meta_description":null,"install_score":null,"install_tag":null,"quickstart_score":null,"quickstart_tag":null}