{"id":13723651,"url":"https://github.com/hongyuanjia/eplusr","last_synced_at":"2025-08-20T10:32:54.691Z","repository":{"id":23157615,"uuid":"89495865","full_name":"hongyuanjia/eplusr","owner":"hongyuanjia","description":"A Toolkit for Using EnergyPlus in R.","archived":false,"fork":false,"pushed_at":"2024-05-25T14:37:36.000Z","size":29776,"stargazers_count":66,"open_issues_count":35,"forks_count":12,"subscribers_count":7,"default_branch":"master","last_synced_at":"2024-06-11T17:54:24.892Z","etag":null,"topics":["energy-simulation","energyplus","energyplus-models","eplus","epw","idd","idf","parametric-simulation","r","r6","simulation"],"latest_commit_sha":null,"homepage":"https://hongyuanjia.github.io/eplusr","language":"R","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"other","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/hongyuanjia.png","metadata":{"files":{"readme":"README.Rmd","changelog":null,"contributing":null,"funding":null,"license":"LICENSE","code_of_conduct":".github/CODE_OF_CONDUCT.md","threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null,"governance":null,"roadmap":null,"authors":null,"dei":null,"publiccode":null,"codemeta":null}},"created_at":"2017-04-26T15:16:34.000Z","updated_at":"2024-06-13T04:18:17.514Z","dependencies_parsed_at":"2023-09-21T19:22:15.934Z","dependency_job_id":"6e071b7b-e9b2-422a-88e3-d65e52074de7","html_url":"https://github.com/hongyuanjia/eplusr","commit_stats":{"total_commits":1774,"total_committers":3,"mean_commits":591.3333333333334,"dds":0.3399098083427283,"last_synced_commit":"a714524fad079607ab978cf2e70ec45b4bcff9ab"},"previous_names":[],"tags_count":23,"template":false,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/hongyuanjia%2Feplusr","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/hongyuanjia%2Feplusr/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/hongyuanjia%2Feplusr/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/hongyuanjia%2Feplusr/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/hongyuanjia","download_url":"https://codeload.github.com/hongyuanjia/eplusr/tar.gz/refs/heads/master","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":207025189,"owners_count":14659131,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2022-07-04T15:15:14.044Z","host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":["energy-simulation","energyplus","energyplus-models","eplus","epw","idd","idf","parametric-simulation","r","r6","simulation"],"created_at":"2024-08-03T01:01:43.887Z","updated_at":"2025-08-20T10:32:54.671Z","avatar_url":"https://github.com/hongyuanjia.png","language":"R","funding_links":[],"categories":["Consumption"],"sub_categories":["Buildings and Heating"],"readme":"---\noutput:\n  github_document\n---\n\n\u003c!-- README.md is generated from README.Rmd. Please edit that file --\u003e\n\n```{r setup, include = FALSE}\nlibrary(knitr)\n\n# the default output hook\nhook_output \u003c- knitr::knit_hooks$get(\"output\")\nknitr::knit_hooks$set(output = function(x, options) {\n    if (!is.null(n \u003c- options$out.lines)) {\n        x \u003c- unlist(strsplit(x, \"\\n\", fixed = TRUE))\n        if (length(x) \u003e n) {\n            # truncate the output\n            x \u003c- c(head(x, n), \"....\", \"\")\n        } else {\n            x \u003c- c(x, \"\")\n        }\n        x \u003c- paste(x, collapse = \"\\n\") # paste first n lines together\n    }\n    hook_output(x, options)\n})\n\nknitr::opts_knit$set(root.dir = tempdir())\nknitr::opts_chunk$set(\n    collapse = TRUE,\n    comment = \"#\u003e\",\n    fig.path = \"README-\"\n)\n\n# Make sure the date is shown in English format not Chinese.\ninvisible(Sys.setlocale(category = \"LC_TIME\", locale = \"en_US.UTF-8\"))\n```\n\n# eplusr \u003cimg src=\"man/figures/logo.svg\" align=\"right\" /\u003e\n\n\u003c!-- badges: start --\u003e\n[![R build status](https://github.com/hongyuanjia/eplusr/workflows/R-CMD-check/badge.svg)](https://github.com/hongyuanjia/eplusr/actions)\n[![codecov](https://codecov.io/gh/hongyuanjia/eplusr/branch/master/graph/badge.svg?token=HoBA0Qm6k2)](https://app.codecov.io/gh/hongyuanjia/eplusr)\n[![CRAN_Status_Badge](http://www.r-pkg.org/badges/version/eplusr)](https://cran.r-project.org/package=eplusr)\n[![CRAN Checks](https://badges.cranchecks.info/worst/eplusr.svg)](https://badges.cranchecks.info/worst/eplusr.svg)\n[![CRAN Download Badge](https://cranlogs.r-pkg.org/badges/eplusr)](https://cran.r-project.org/package=eplusr)\n\u003c!-- badges: end --\u003e\n\n\u003e A Toolkit for Using EnergyPlus in R.\n\neplusr provides a rich toolkit of using whole building energy simulation program\n[EnergyPlus](https://energyplus.net) directly in R, which enables programmatic\nnavigation, modification of EnergyPlus, conducts parametric simulations and\nretrieves outputs. More information about EnergyPlus can be found at [its\nwebsite](https://energyplus.net).\n\nA comprehensive introduction to eplusr can be found using\n[`vignette(\"eplusr\")`](https://hongyuanjia.github.io/eplusr/articles/eplusr.html).\nThere is also an online slides here ([Interfacing EnergyPlus Using\nR](https://hongyuanjia.github.io/eplusrIntro/)).  You can learn more about eplusr\nat https://hongyuanjia.github.io/eplusr/, along with full package documentation.\n\n## How to cite\n\n```{r}\ncitation(\"eplusr\")\n```\n\n## Installation\n\nYou can install the latest stable release of eplusr from CRAN.\n\n```{r cran-install, eval = FALSE}\ninstall.packages(\"eplusr\")\n```\n\nAlternatively, you can install the development version from GitHub.\n\n```{r gh-installation, eval = FALSE}\ninstall.packages(\"eplusr\",\n    repos = c(\n        hongyuanjia = \"https://hongyuanjia.r-universe.dev\",\n        cran = \"https://cran.r-project.org\"\n    )\n)\n```\n\nSince running the IDF files requires EnergyPlus (https://energyplus.net),\nEnergyPlus has to be installed if you want to run EnergyPlus models in R.  There\nare helper functions in eplusr to download and install it automatically on major\noperating systems (Windows, macOS and Linux):\n\n```{r eplus-install, eval = FALSE}\n# install the latest version (currently v23.1.0)\neplusr::install_eplus(\"latest\")\n\n# OR download the latest version (currently v23.1.0) and run the installer\n# manually by yourself\neplusr::download_eplus(\"latest\", dir = tempdir())\n```\n\nNote that the installation process in `install_eplus()` requires\n**administrative privileges**. You have to run R with administrator (or with\nsudo if you are on macOS or Linux) to make it work if you are not in interactive\nmode.\n\n## Features\n\n* Download, install EnergyPlus in R\n* Read, parse and modify EnergyPlus:\n  - Input Data File (IDF)\n  - Weather File (EPW)\n  - Report Data Dictionary (RDD) \u0026 Meter Data Dictionary (MDD)\n  - Error File (ERR)\n* Modify multiple versions of IDFs and run corresponding EnergyPlus both in the\n  background and in the front\n* Rich-featured interfaces to query and modify IDFs\n* Automatically handle referenced fields and validate input during modification\n* Take fully advantage of most common used data structure for data science in\n  R – data.frame\n  - Extract model, weather data into data.frames\n  - Modify multiple objects via data.frames input\n  - Query output via SQL in Tidy format which is much better for data analysis\n    and visualization\n* Provide a simple yet extensible prototype of conducting parametric simulations\n  and collect all results in one go\n* A pure R-based version updater which is more than\n  [20X](https://hongyuanjia.github.io/eplusr/articles/transition.html)\n  faster than VersionUpdater distributed with EnergyPlus\n* Fast 3D geometry visualization\n\n**View IDF geometry in 3D**\\\n```{r, echo = FALSE, out.width = \"60%\"}\nknitr::include_graphics(\"https://github.com/hongyuanjia/eplusr/blob/master/tools/figures/view_geometry.gif?raw=true\")\n```\n\n**Turn RStudio into a model editor via autocompletion**\\\n```{r, echo = FALSE, out.width = \"60%\"}\nknitr::include_graphics(\"https://github.com/hongyuanjia/eplusr/blob/master/tools/figures/autocomplete.gif?raw=true\")\n```\n\n**Query and modify weather file**\\\n```{r, echo = FALSE, out.width = \"60%\"}\nknitr::include_graphics(\"https://github.com/hongyuanjia/eplusr/blob/master/tools/figures/epw.gif?raw=true\")\n```\n\n**Query output via SQL in Tidy format which is much better for data analysis**\\\n```{r, echo = FALSE, out.width = \"60%\"}\nknitr::include_graphics(\"https://github.com/hongyuanjia/eplusr/blob/master/tools/figures/job.gif?raw=true\")\n```\n\n## Resources\n\n### Articles\n\n* Hongyuan Jia, Adrian Chong (2020). eplusr: A framework for integrating\n  building energy simulation and data-driven analytics. doi:\n  10.13140/RG.2.2.34326.16966\n  - [Source code and data to reproduce figures in the article](https://github.com/ideas-lab-nus/eplusr-paper)\n\n### Vignettes\n\nPlease see these vignettes and articles about {eplusr}\n\n* [Introduction to eplusr](https://hongyuanjia.github.io/eplusr/articles/eplusr.html)\n* [Run simulation and data exploration](https://hongyuanjia.github.io/eplusr/articles/job.html)\n* [Parametric simulations](https://hongyuanjia.github.io/eplusr/articles/param.html)\n* [Update IDF version](https://hongyuanjia.github.io/eplusr/articles/transition.html)\n* [Work with weather files](https://hongyuanjia.github.io/eplusr/articles/epw.html)\n* [Work with `Schedule:Compact` objects](https://hongyuanjia.github.io/eplusr/articles/schedule.html)\n* [Work with geometries](https://hongyuanjia.github.io/eplusr/articles/geom.html)\n* [Frequently asked questions](https://hongyuanjia.github.io/eplusr/articles/faq.html)\n\n### Slides\n\n* [Slides: Interfacing EnergyPlus using R](https://hongyuanjia.github.io/eplusrIntro/)\n\n## Additional resources\n\n* eplusr manual: https://hongyuanjia.github.io/eplusr/\n* eplusr Docker image: https://github.com/hongyuanjia/eplusr-docker\n* [epwshiftr](https://CRAN.R-project.org/package=epwshiftr) for creating future\n  EnergyPlus weather files using CMIP6 data\n* [epluspar](https://github.com/hongyuanjia/epluspar) for conducting parametric\n  analysis on EnergyPlus models, including sensitivity analysis, Bayesian\n  calibration and optimization.\n\n## Acknowledgment\n\nI would like to thank many open source projects who have heavily inspired the\ndevelopment of eplusr package, especially these below:\n\n* [EnergyPlus](https://energyplus.net): A whole building energy simulation\n  program.\n* [OpenStudio](https://openstudio.net): A cross-platform collection of\n  software tools to support whole building energy modeling using EnergyPlus and\n  advanced daylight analysis using Radiance.\n* [eppy](https://github.com/santoshphilip/eppy): Scripting language for E+,\n  EnergyPlus.\n* [JEplus](http://www.jeplus.org): An EnergyPlus simulation manager for\n  parametrics.\n\n## Author\n\nHongyuan Jia and Adrian Chong\n\n## License\n\nThe project is released under the terms of MIT License.\n\nCopyright © 2016-2025 Hongyuan Jia and Adrian Chong\n\n---\n\nPlease note that the 'eplusr' project is released with a\n[Contributor Code of Conduct](https://github.com/hongyuanjia/eplusr/blob/master/.github/CODE_OF_CONDUCT.md).\nBy contributing to this project, you agree to abide by its terms.\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fhongyuanjia%2Feplusr","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fhongyuanjia%2Feplusr","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fhongyuanjia%2Feplusr/lists"}