Comments (8)
I'm not sure. I would rather want to send something like this to my colleagues compared to a data.frame :)
You dont have to send a data frame to your colleagues. All i am suggesting is to have a generic function that returns the data frame. And then a function calling that generic function and then producing a textual summary like the one you posted above from the df. The latter part depends on the project, the former part is universal.
All until here is universal in my eyes
from piaminterfaces.
Probably done, @orichters ?
from piaminterfaces.
in checkSummations, loop over models (and scenarios?) to have them differentiated
@orichters What do you mean by this?
from piaminterfaces.
As far as I understood, @nicobauer wanted to pass the whole quitte object (or best the xlsx file) to checkSummations
, but then it checks everything at once which is not very helpful (in particular for the human-readable output part which does not differentiate which model is wrong). Doing one comparison per model might be much better (As far as I understood, Nico does that now by calling the function multiple times)
from piaminterfaces.
I personally dont think this is a problem. If you run it on all models and scenarios, you get one large dataframe with all the comparisons for all models+scenarios+variables. You can then filter afterwards based on your needs, e.g. by variable, scenario, model or relative difference / absolute difference above a certain threshold you find acceptable.
I think this final step is project-specific / depends on your individual needs and does not fit into a generic summations check.
from piaminterfaces.
So then we better switch off the human-readable output if no template is supplied? Because if it doesn't tell you to which model it relates, it is quite useless, I guess.
from piaminterfaces.
So then we better switch off the human-readable output if no template is supplied? Because if it doesn't tell you to which model it relates, it is quite useless, I guess.
Yes. In the intermodel-comparison context the human-readable output is not useful. So when you want to compare accross models, you don't supply a template and dont get output. When you do a check pre-submission, you supply a template and get the output.
In the long run, we probably want to move out the generic parts of summation checks (that just take input data and create checksums + absolute diffs + relative diffs) and then create an intermodel comparison function and a pre-submission function. Both call the generic summation check and then generate human-readable output that is helpful in the respective context.
from piaminterfaces.
I'm not sure. I would rather want to send something like this to my colleagues compared to a data.frame :)
Summation checks that failed in MESSAGEix-GLOBIOM based on summation_groups_NAVIGATE_T2p4.csv
Final Energy|Industry <
+ Final Energy|Industry|Electricity
+ Final Energy|Industry|Gases
+ Final Energy|Industry|Heat
+ Final Energy|Industry|Hydrogen
+ Final Energy|Industry|Liquids
+ Final Energy|Industry|Other
+ Final Energy|Industry|Solids
+ Final Energy|Industry|Waste
+ Final Energy|Industry|Geothermal
Relative difference between -49.3% and -20.3%, absolute difference up to 32.85 EJ/yr.
from piaminterfaces.
Related Issues (20)
- generateIIASASubmission() fails ungracefully when no .mif files are found
- fix and factor out generateIIASASubmission() functionality to be used as general REMIND output filter for submissions HOT 1
- allow to edit mapping templates with R
- generateIIASASubmission silently drops identical scenarios HOT 1
- Add new energy waste emissions to mapping templates to ensure summation consistency in projects HOT 9
- Fix ggplot2 3.5.0 warnings
- Cleanup N2O and CH4 emission reporting HOT 3
- Variables with wrong piam_unit are just silently dropped instead of an error/warning raised HOT 4
- Find solution for dropping aggregated regions in generateIIASASubmission
- Industry|Heat variables HOT 2
- Check SDP post-processing variables HOT 2
- Fix last 14 unclear variable mappings
- improve output of checkDataLength
- Automate download of community template HOT 1
- checkSummations does not show piam_factor in human-readable summary
- Adjust piam_unit after SSP update
- In checkSummationRegional, check whether intensive variables lie between extremes
- piam_weight column mix of NA and "NULL" HOT 2
- Hydrogen Energy Investment inconsistency AR6 vs. NAVIGATE HOT 1
- variableInfo does not realize if variable is contained in multiple summation groups HOT 1
Recommend Projects
-
React
A declarative, efficient, and flexible JavaScript library for building user interfaces.
-
Vue.js
🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
-
Typescript
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
-
TensorFlow
An Open Source Machine Learning Framework for Everyone
-
Django
The Web framework for perfectionists with deadlines.
-
Laravel
A PHP framework for web artisans
-
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.
-
Visualization
Some thing interesting about visualization, use data art
-
Game
Some thing interesting about game, make everyone happy.
Recommend Org
-
Facebook
We are working to build community through open source technology. NB: members must have two-factor auth.
-
Microsoft
Open source projects and samples from Microsoft.
-
Google
Google ❤️ Open Source for everyone.
-
Alibaba
Alibaba Open Source for everyone
-
D3
Data-Driven Documents codes.
-
Tencent
China tencent open source team.
from piaminterfaces.