Coder Social home page Coder Social logo

dsgrid

Documentation codecov

Python API for contributing to and accessing demand-side grid model (dsgrid) projects and datasets.

⚠️ dsgrid is under active development and does not yet have a formal package release. Details listed here are subject to change. Please reach out to the dsgrid coordination team with any questions or other feedback. ⚠️

Install | Usage | Uninstall

Install

Virtual environment | Dependencies | from PIPY/pip | from pip+git | from cloned repository

Virtual environment

Create a virtual environment in which to install dsgrid. Anaconda or miniconda is recommended.

conda create -n dsgrid python=3.10
conda activate dsgrid

Dependencies

dsgrid uses Apache Spark to manage big data. There are no separate installation steps for Apache Spark beyond installing the dsgrid package, because the pyspark Python dependency handles it. However, you should be aware that Apache Spark's Microsoft Windows support is poor and essentially limited to local mode. That is, if you use dsgrid on a Windows machine you should not attempt to install a full version of Spark nor expect to run on a Spark cluster. As such, we recommend limiting dsgrid use on Windows to browsing the registry, registering and submitting small- to medium-sized datasets, or development work with small test projects. Full dsgrid functionality with large projects requires additional computational resources, e.g., high performance or cloud computing, typically on a Linux operating system.

Additional Notes

  • If pyspark complains about not finding Python, you may need to locate your python executable file (python.exe on Windows), copy it, and rename the copy to python3 (python3.exe on Windows)

Spark requires Java 8 or later with the JAVA_HOME environment variable set to the Java installation directory.

On Linux you can install OpenJDK with conda:

conda install openjdk

Windows install instructions are below.

Windows

To install Apache Spark on Windows, follow these instructions.

From PIPY/pip

Not yet available

From pip+git

With ssh keys:

pip install git+ssh://[email protected]/dsgrid/dsgrid.git@main

# or

pip install git+ssh://[email protected]/dsgrid/dsgrid.git@develop

From http:

pip install git+https://github.com/dsgrid/dsgrid.git@main

# or

pip install git+https://github.com/dsgrid/dsgrid.git@develop

From Cloned Repository

First, clone the repository and change into the dsgrid directory. For example:

cd ~                                       # or other directory where you put repositories
git clone [email protected]:dsgrid/dsgrid.git # or the http address
cd dsgrid

Then install the pacakge using the pip -e flag to directly use the files in the cloned repository.

Users:

pip install -e .

Developers:

pip install -e '.[dev]'

Usage

dsgrid is primarily a command-line interface (CLI) tool. To see the available commands:

dsgrid --help

Uninstall

pip uninstall dsgrid

If you are using a conda environment

conda deactivate

NREL-dsgrid's Projects

dsgrid icon dsgrid

Python package for working with demand-side grid projects, datasets and queries

dsgrid-project-decarb icon dsgrid-project-decarb

Configuration files that describe high resolution demand-side decarbonization scenarios for the United States, as developed by staff from multiple U.S. DOE National Laboratories.

dsgrid-utils icon dsgrid-utils

Python package of functionality used in both dsgrid-load and dsgrid-flex

openstudio-buildstock icon openstudio-buildstock

Modeling the existing building stock (residential and commercial) using OpenStudio/EnergyPlus.

us-counties icon us-counties

Python utilities for comparing lists of U.S. counties

webspinner icon webspinner

Python utilities for working with data source types used by the dsgrid project (i.e., AWS, PostgreSQL, and .parquet)

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.