{"id":23820,"library":"gridmeter","title":"Gridmeter","description":"Tools for stratified sampling for comparison groups, used to evaluate energy efficiency programs. Current version: 1.1.0. Release cadence is irregular.","status":"active","version":"1.1.0","language":"python","source_language":"en","source_url":"http://github.com/recurve-methods/comparison_groups","tags":["sampling","energy-efficiency","stratified-sampling","comparison-groups"],"install":[{"cmd":"pip install gridmeter","lang":"bash","label":"PyPI"}],"dependencies":[],"imports":[{"note":"Wrong submodule import path","wrong":"from gridmeter.gridmeter import StratifiedSample","symbol":"StratifiedSample","correct":"from gridmeter import StratifiedSample"},{"note":"Function not at module level in old docs","wrong":"import gridmeter; gridmeter.compare_results","symbol":"compare_results","correct":"from gridmeter import compare_results"}],"quickstart":{"code":"import json\nfrom gridmeter import StratifiedSample\n\nwith open('source.json') as f:\n    source = json.load(f)\nwith open('target.json') as f:\n    target = json.load(f)\n\nsample = StratifiedSample(source, target, strata_column='group')\nsample_result = sample.draw()\nprint(sample_result)","lang":"python","description":"Draw a stratified sample from source to match target distribution."},"warnings":[{"fix":"Convert DataFrames to list of dicts using df.to_dict('records') before passing.","message":"Data input format: source and target must be lists of dicts with the strata_column key. Pandas DataFrames are not directly supported without conversion.","severity":"gotcha","affected_versions":">=1.0.0"},{"fix":"Always specify `strata_column` parameter when creating StratifiedSample.","message":"The `StratifiedSample` class constructor signature changed in 1.1.0: `strata_column` is now required instead of optional.","severity":"deprecated","affected_versions":"1.1.0"}],"env_vars":null,"last_verified":"2026-05-01T00:00:00.000Z","next_check":"2026-07-30T00:00:00.000Z","problems":[{"fix":"Use: from gridmeter import StratifiedSample","cause":"Trying to import StratifiedSample directly from the package top-level incorrectly due to submodule structure.","error":"AttributeError: module 'gridmeter' has no attribute 'StratifiedSample'"},{"fix":"Add strata_column='your_column_name' when instantiating StratifiedSample.","cause":"After upgrade to 1.1.0, strata_column is a required argument.","error":"TypeError: __init__() missing 1 required positional argument: 'strata_column'"}],"ecosystem":"pypi","meta_description":null,"install_score":null,"install_tag":null,"quickstart_score":null,"quickstart_tag":null}